<?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>129985</bug_id>
          
          <creation_ts>2014-03-08 19:17:16 -0800</creation_ts>
          <short_desc>Subpixel rendering: Pass FloatSize boxsize to transform animations to support device pixel sizing.</short_desc>
          <delta_ts>2014-03-09 13:21:46 -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>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>luiz</cc>
    
    <cc>noam</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>988679</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2014-03-08 19:17:16 -0800</bug_when>
    <thetext>No functionality change at this point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>988680</commentid>
    <comment_count>1</comment_count>
      <attachid>226245</attachid>
    <who name="alan">zalan</who>
    <bug_when>2014-03-08 19:23:42 -0800</bug_when>
    <thetext>Created attachment 226245
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>988683</commentid>
    <comment_count>2</comment_count>
      <attachid>226246</attachid>
    <who name="alan">zalan</who>
    <bug_when>2014-03-08 20:10:04 -0800</bug_when>
    <thetext>Created attachment 226246
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>988684</commentid>
    <comment_count>3</comment_count>
      <attachid>226246</attachid>
    <who name="alan">zalan</who>
    <bug_when>2014-03-08 20:10:19 -0800</bug_when>
    <thetext>Comment on attachment 226246
Patch

EWSing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>988745</commentid>
    <comment_count>4</comment_count>
      <attachid>226246</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-09 13:21:42 -0700</bug_when>
    <thetext>Comment on attachment 226246
Patch

Clearing flags on attachment: 226246

Committed r165354: &lt;http://trac.webkit.org/changeset/165354&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>988746</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-09 13:21:46 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>226245</attachid>
            <date>2014-03-08 19:23:42 -0800</date>
            <delta_ts>2014-03-08 20:10:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-129985-20140308192327.patch</filename>
            <type>text/plain</type>
            <size>17443</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY1MzQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODk4OTk1ZTU1NGE2MWQ2
ZWY4N2Q1NGFmOTdlYTBmNzVkMTBiZTY1NC4uNGJkNmQwYTlhMGYwNDJhYmM3NTgwZTJkNjhiNTc3
NmQxODU3MTUyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMwIEBACiAyMDE0LTAzLTA4ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKKyAgICAgICAgU3VicGl4ZWwgcmVuZGVyaW5n
OiBQYXNzIEZsb2F0U2l6ZSBib3hzaXplIHRvIHRyYW5zZm9ybSBhbmltYXRpb25zIHRvIHN1cHBv
cnQgZGV2aWNlIHBpeGVsIHNpemluZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyOTk4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFRoaXMgaXMgaW4gcHJlcGFyYXRpb24gdG8gc3RvcCBwYXNzaW5nIGlu
dGVncmFsIHBvc2l0aW9uZWQgYm94ZXMgdG8gdHJhbnNmb3JtIGFuaW1hdGlvbnMuCisKKyAgICAg
ICAgTm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgICogV2ViQ29yZS5leHAuaW46Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllci5oOgorICAgICAgICAoV2Vi
Q29yZTo6R3JhcGhpY3NMYXllcjo6YWRkQW5pbWF0aW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9jYS9HcmFwaGljc0xheWVyQ0EuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0VHJh
bnNmb3JtRnVuY3Rpb25WYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyQ0E6
OmFkZEFuaW1hdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyQ0E6OmFwcGVu
ZFRvVW5jb21taXR0ZWRBbmltYXRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5
ZXJDQTo6Y3JlYXRlVHJhbnNmb3JtQW5pbWF0aW9uc0Zyb21LZXlmcmFtZXMpOgorICAgICAgICAo
V2ViQ29yZTo6R3JhcGhpY3NMYXllckNBOjpzZXRUcmFuc2Zvcm1BbmltYXRpb25FbmRwb2ludHMp
OgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllckNBOjpzZXRUcmFuc2Zvcm1BbmltYXRp
b25LZXlmcmFtZXMpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL0dyYXBoaWNzTGF5
ZXJDQS5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJCYWNraW5nOjpzdGFydFRyYW5zaXRpb24pOgorCisy
MDE0LTAzLTA4ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKICAgICAgICAgU3Vi
cGl4ZWwgcmVuZGVyaW5nOiBTaW1wbGUgY29tcG9zaXRpbmcgY29udGFpbmVyIGxheWVyIChpc1Np
bXBsZUNvbnRhaW5lckNvbXBvc2l0aW5nTGF5ZXIpIHBhaW50cyB0byB3cm9uZyBwb3NpdGlvbi4K
ICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyOTg2MQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cKaW5kZXggOTI2YjUxZjRlMTFkNTE5ZjU5MjNhODgyOTZhYTU2ODc1MTg5YzdiYi4u
MjYyNmM0YjUzMDAyOTU1MGZiYjA4ZDVkNzYwODE1MjdjMTlhMDMwMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE2IEBACisyMDE0LTAzLTA4ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+
CisKKyAgICAgICAgU3VicGl4ZWwgcmVuZGVyaW5nOiBQYXNzIEZsb2F0U2l6ZSBib3hzaXplIHRv
IHRyYW5zZm9ybSBhbmltYXRpb25zIHRvIHN1cHBvcnQgZGV2aWNlIHBpeGVsIHNpemluZy4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyOTk4NQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgaXMgaW4g
cHJlcGFyYXRpb24gdG8gc3RvcCBwYXNzaW5nIGludGVncmFsIHBvc2l0aW9uZWQgYm94ZXMgdG8g
dHJhbnNmb3JtIGFuaW1hdGlvbnMuCisKKyAgICAgICAgTm8gY2hhbmdlIGluIGJlaGF2aW9yLgor
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9HcmFwaGljc0xheWVyQ0FSZW1vdGUu
aDoKKwogMjAxNC0wMy0wOCAgSmFlIEh5dW4gUGFyayAgPGphZXBhcmtAd2Via2l0Lm9yZz4KIAog
ICAgICAgICBSZW1vdmUgdW5uZWNlc3NhcnkgY2FzdGluZyBpbiBOZXR3b3JrUHJvY2Vzc01haW5V
bml4LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCA3ZTI4MTc4YWY0MzZkZDI3ZGJhOWRlYWRi
NzZlMTNjMmViYjZjMzFjLi45ZTA5MTRiMTk2N2RiNTg3Yjc1YzNhMTgwYWVhZTFjNzQ5MmFjNTg4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtNTIxLDcgKzUyMSw3IEBAIF9fWk43V2ViQ29yZTE1
R3JhcGhpY3NMYXllckNBMTBzZXRGaWx0ZXJzRVJLTlNfMTZGaWx0ZXJPcGVyYXRpb25zRQogX19a
TjdXZWJDb3JlMTVHcmFwaGljc0xheWVyQ0ExMHNldE9wYWNpdHlFZgogX19aTjdXZWJDb3JlMTVH
cmFwaGljc0xheWVyQ0ExMXNldENoaWxkcmVuRVJLTjNXVEY2VmVjdG9ySVBOU18xM0dyYXBoaWNz
TGF5ZXJFTG0wRU5TMV8xNUNyYXNoT25PdmVyZmxvd0VFRQogX19aTjdXZWJDb3JlMTVHcmFwaGlj
c0xheWVyQ0ExMXNldFBvc2l0aW9uRVJLTlNfMTBGbG9hdFBvaW50RQotX19aTjdXZWJDb3JlMTVH
cmFwaGljc0xheWVyQ0ExMmFkZEFuaW1hdGlvbkVSS05TXzE3S2V5ZnJhbWVWYWx1ZUxpc3RFUktO
U183SW50U2l6ZUVQS05TXzlBbmltYXRpb25FUktOM1dURjZTdHJpbmdFZAorX19aTjdXZWJDb3Jl
MTVHcmFwaGljc0xheWVyQ0ExMmFkZEFuaW1hdGlvbkVSS05TXzE3S2V5ZnJhbWVWYWx1ZUxpc3RF
UktOU185RmxvYXRTaXplRVBLTlNfOUFuaW1hdGlvbkVSS04zV1RGNlN0cmluZ0VkCiBfX1pON1dl
YkNvcmUxNUdyYXBoaWNzTGF5ZXJDQTEycmVwbGFjZUNoaWxkRVBOU18xM0dyYXBoaWNzTGF5ZXJF
UzJfCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzTGF5ZXJDQTEyc2V0QmxlbmRNb2RlRU5TXzlCbGVu
ZE1vZGVFCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzTGF5ZXJDQTEyc2V0TWFza0xheWVyRVBOU18x
M0dyYXBoaWNzTGF5ZXJFCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0xheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9H
cmFwaGljc0xheWVyLmgKaW5kZXggYzRmNmM5ZGNjYjg4Yjk1NGI5OTVhY2I0MGYxYmYxYWUwYjJl
YTdlMS4uYTE0ZDVlMDRjYjk1OTdjYjdiMWI3NzQwYTkwZGRlNDdhNmEyNDFkYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzTGF5ZXIuaApAQCAtMzg4
LDcgKzM4OCw3IEBAIHB1YmxpYzoKICAgICAvLyBSZXR1cm4gdHJ1ZSBpZiB0aGUgYW5pbWF0aW9u
IGlzIGhhbmRsZWQgYnkgdGhlIGNvbXBvc2l0aW5nIHN5c3RlbS4gSWYgdGhpcyByZXR1cm5zCiAg
ICAgLy8gZmFsc2UsIHRoZSBhbmltYXRpb24gd2lsbCBiZSBydW4gYnkgQW5pbWF0aW9uQ29udHJv
bGxlci4KICAgICAvLyBUaGVzZSBtZXRob2RzIGhhbmRsZSBib3RoIHRyYW5zaXRpb25zIGFuZCBr
ZXlmcmFtZSBhbmltYXRpb25zLgotICAgIHZpcnR1YWwgYm9vbCBhZGRBbmltYXRpb24oY29uc3Qg
S2V5ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBJbnRTaXplJiAvKmJveFNpemUqLywgY29uc3QgQW5p
bWF0aW9uKiwgY29uc3QgU3RyaW5nJiAvKmFuaW1hdGlvbk5hbWUqLywgZG91YmxlIC8qdGltZU9m
ZnNldCovKSAgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgYWRkQW5pbWF0aW9u
KGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgRmxvYXRTaXplJiAvKmJveFNpemUqLywg
Y29uc3QgQW5pbWF0aW9uKiwgY29uc3QgU3RyaW5nJiAvKmFuaW1hdGlvbk5hbWUqLywgZG91Ymxl
IC8qdGltZU9mZnNldCovKSAgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIHZvaWQgcGF1
c2VBbmltYXRpb24oY29uc3QgU3RyaW5nJiAvKmFuaW1hdGlvbk5hbWUqLywgZG91YmxlIC8qdGlt
ZU9mZnNldCovKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlQW5pbWF0aW9uKGNvbnN0IFN0
cmluZyYgLyphbmltYXRpb25OYW1lKi8pIHsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9HcmFwaGljc0xheWVyQ0EuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvR3JhcGhpY3NMYXllckNBLmNwcAppbmRleCAxYWY4NGUx
MWNjNjI2ZDZjZWRiYzQwZmQ5ZDJhM2NmOTk5NDJmN2I3Li5jZjcwZjUzY2U3YmQ5YTkxOTk5NmMx
OTdlOGJiNDg2NjQ3YmZhYzFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jYS9HcmFwaGljc0xheWVyQ0EuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NhL0dyYXBoaWNzTGF5ZXJDQS5jcHAKQEAgLTEyOSw3ICsxMjksNyBAQCBz
dGF0aWMgYm9vbCBpc1RyYW5zZm9ybVR5cGVOdW1iZXIoVHJhbnNmb3JtT3BlcmF0aW9uOjpPcGVy
YXRpb25UeXBlIHRyYW5zZm9ybVR5cAogICAgIHJldHVybiAhaXNUcmFuc2Zvcm1UeXBlVHJhbnNm
b3JtYXRpb25NYXRyaXgodHJhbnNmb3JtVHlwZSkgJiYgIWlzVHJhbnNmb3JtVHlwZUZsb2F0UG9p
bnQzRCh0cmFuc2Zvcm1UeXBlKTsKIH0KIAotc3RhdGljIHZvaWQgZ2V0VHJhbnNmb3JtRnVuY3Rp
b25WYWx1ZShjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb24qIHRyYW5zZm9ybU9wLCBUcmFuc2Zvcm1P
cGVyYXRpb246Ok9wZXJhdGlvblR5cGUgdHJhbnNmb3JtVHlwZSwgY29uc3QgSW50U2l6ZSYgc2l6
ZSwgZmxvYXQmIHZhbHVlKQorc3RhdGljIHZvaWQgZ2V0VHJhbnNmb3JtRnVuY3Rpb25WYWx1ZShj
b25zdCBUcmFuc2Zvcm1PcGVyYXRpb24qIHRyYW5zZm9ybU9wLCBUcmFuc2Zvcm1PcGVyYXRpb246
Ok9wZXJhdGlvblR5cGUgdHJhbnNmb3JtVHlwZSwgY29uc3QgRmxvYXRTaXplJiBzaXplLCBmbG9h
dCYgdmFsdWUpCiB7CiAgICAgc3dpdGNoICh0cmFuc2Zvcm1UeXBlKSB7CiAgICAgY2FzZSBUcmFu
c2Zvcm1PcGVyYXRpb246OlJPVEFURToKQEAgLTE2MCw3ICsxNjAsNyBAQCBzdGF0aWMgdm9pZCBn
ZXRUcmFuc2Zvcm1GdW5jdGlvblZhbHVlKGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbiogdHJhbnNm
b3JtT3AsIFRyYQogICAgIH0KIH0KIAotc3RhdGljIHZvaWQgZ2V0VHJhbnNmb3JtRnVuY3Rpb25W
YWx1ZShjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb24qIHRyYW5zZm9ybU9wLCBUcmFuc2Zvcm1PcGVy
YXRpb246Ok9wZXJhdGlvblR5cGUgdHJhbnNmb3JtVHlwZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSwg
RmxvYXRQb2ludDNEJiB2YWx1ZSkKK3N0YXRpYyB2b2lkIGdldFRyYW5zZm9ybUZ1bmN0aW9uVmFs
dWUoY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9uKiB0cmFuc2Zvcm1PcCwgVHJhbnNmb3JtT3BlcmF0
aW9uOjpPcGVyYXRpb25UeXBlIHRyYW5zZm9ybVR5cGUsIGNvbnN0IEZsb2F0U2l6ZSYgc2l6ZSwg
RmxvYXRQb2ludDNEJiB2YWx1ZSkKIHsKICAgICBzd2l0Y2ggKHRyYW5zZm9ybVR5cGUpIHsKICAg
ICBjYXNlIFRyYW5zZm9ybU9wZXJhdGlvbjo6U0NBTEU6CkBAIC0xODAsNyArMTgwLDcgQEAgc3Rh
dGljIHZvaWQgZ2V0VHJhbnNmb3JtRnVuY3Rpb25WYWx1ZShjb25zdCBUcmFuc2Zvcm1PcGVyYXRp
b24qIHRyYW5zZm9ybU9wLCBUcmEKICAgICB9CiB9CiAKLXN0YXRpYyB2b2lkIGdldFRyYW5zZm9y
bUZ1bmN0aW9uVmFsdWUoY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9uKiB0cmFuc2Zvcm1PcCwgVHJh
bnNmb3JtT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHRyYW5zZm9ybVR5cGUsIGNvbnN0IEludFNp
emUmIHNpemUsIFRyYW5zZm9ybWF0aW9uTWF0cml4JiB2YWx1ZSkKK3N0YXRpYyB2b2lkIGdldFRy
YW5zZm9ybUZ1bmN0aW9uVmFsdWUoY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9uKiB0cmFuc2Zvcm1P
cCwgVHJhbnNmb3JtT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHRyYW5zZm9ybVR5cGUsIGNvbnN0
IEZsb2F0U2l6ZSYgc2l6ZSwgVHJhbnNmb3JtYXRpb25NYXRyaXgmIHZhbHVlKQogewogICAgIHN3
aXRjaCAodHJhbnNmb3JtVHlwZSkgewogICAgIGNhc2UgVHJhbnNmb3JtT3BlcmF0aW9uOjpTS0VX
X1g6CkBAIC03ODcsNyArNzg3LDcgQEAgYm9vbCBHcmFwaGljc0xheWVyQ0E6OnNob3VsZFJlcGFp
bnRPblNpemVDaGFuZ2UoKSBjb25zdAogICAgIHJldHVybiBkcmF3c0NvbnRlbnQoKSAmJiAhdGls
ZWRCYWNraW5nKCk7CiB9CiAKLWJvb2wgR3JhcGhpY3NMYXllckNBOjphZGRBbmltYXRpb24oY29u
c3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIHZhbHVlTGlzdCwgY29uc3QgSW50U2l6ZSYgYm94U2l6ZSwg
Y29uc3QgQW5pbWF0aW9uKiBhbmltLCBjb25zdCBTdHJpbmcmIGFuaW1hdGlvbk5hbWUsIGRvdWJs
ZSB0aW1lT2Zmc2V0KQorYm9vbCBHcmFwaGljc0xheWVyQ0E6OmFkZEFuaW1hdGlvbihjb25zdCBL
ZXlmcmFtZVZhbHVlTGlzdCYgdmFsdWVMaXN0LCBjb25zdCBGbG9hdFNpemUmIGJveFNpemUsIGNv
bnN0IEFuaW1hdGlvbiogYW5pbSwgY29uc3QgU3RyaW5nJiBhbmltYXRpb25OYW1lLCBkb3VibGUg
dGltZU9mZnNldCkKIHsKICAgICBBU1NFUlQoIWFuaW1hdGlvbk5hbWUuaXNFbXB0eSgpKTsKIApA
QCAtMjM3OCw3ICsyMzc4LDcgQEAgYm9vbCBHcmFwaGljc0xheWVyQ0E6OmNyZWF0ZUFuaW1hdGlv
bkZyb21LZXlmcmFtZXMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIHZhbHUKICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAotYm9vbCBHcmFwaGljc0xheWVyQ0E6OmFwcGVuZFRvVW5jb21taXR0ZWRBbmlt
YXRpb25zKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiB2YWx1ZUxpc3QsIGNvbnN0IFRyYW5zZm9y
bU9wZXJhdGlvbnMqIG9wZXJhdGlvbnMsIGNvbnN0IEFuaW1hdGlvbiogYW5pbWF0aW9uLCBjb25z
dCBTdHJpbmcmIGFuaW1hdGlvbk5hbWUsIGNvbnN0IEludFNpemUmIGJveFNpemUsIGludCBhbmlt
YXRpb25JbmRleCwgZG91YmxlIHRpbWVPZmZzZXQsIGJvb2wgaXNNYXRyaXhBbmltYXRpb24pCiti
b29sIEdyYXBoaWNzTGF5ZXJDQTo6YXBwZW5kVG9VbmNvbW1pdHRlZEFuaW1hdGlvbnMoY29uc3Qg
S2V5ZnJhbWVWYWx1ZUxpc3QmIHZhbHVlTGlzdCwgY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9ucyog
b3BlcmF0aW9ucywgY29uc3QgQW5pbWF0aW9uKiBhbmltYXRpb24sIGNvbnN0IFN0cmluZyYgYW5p
bWF0aW9uTmFtZSwgY29uc3QgRmxvYXRTaXplJiBib3hTaXplLCBpbnQgYW5pbWF0aW9uSW5kZXgs
IGRvdWJsZSB0aW1lT2Zmc2V0LCBib29sIGlzTWF0cml4QW5pbWF0aW9uKQogewogICAgIFRyYW5z
Zm9ybU9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSB0cmFuc2Zvcm1PcCA9IGlzTWF0cml4QW5pbWF0
aW9uID8gVHJhbnNmb3JtT3BlcmF0aW9uOjpNQVRSSVhfM0QgOiBvcGVyYXRpb25zLT5vcGVyYXRp
b25zKCkuYXQoYW5pbWF0aW9uSW5kZXgpLT50eXBlKCk7CiAgICAgYm9vbCBhZGRpdGl2ZSA9IGFu
aW1hdGlvbkluZGV4ID4gMDsKQEAgLTI0NDMsNyArMjQ0Myw3IEBAIGJvb2wgR3JhcGhpY3NMYXll
ckNBOjpnZXRUcmFuc2Zvcm1Gcm9tQW5pbWF0aW9uc1dpdGhNYXhTY2FsZUltcGFjdChjb25zdCBU
cmFuc2ZvCiAgICAgcmV0dXJuIGhhdmVUcmFuc2Zvcm1BbmltYXRpb247CiB9CiAKLWJvb2wgR3Jh
cGhpY3NMYXllckNBOjpjcmVhdGVUcmFuc2Zvcm1BbmltYXRpb25zRnJvbUtleWZyYW1lcyhjb25z
dCBLZXlmcmFtZVZhbHVlTGlzdCYgdmFsdWVMaXN0LCBjb25zdCBBbmltYXRpb24qIGFuaW1hdGlv
biwgY29uc3QgU3RyaW5nJiBhbmltYXRpb25OYW1lLCBkb3VibGUgdGltZU9mZnNldCwgY29uc3Qg
SW50U2l6ZSYgYm94U2l6ZSkKK2Jvb2wgR3JhcGhpY3NMYXllckNBOjpjcmVhdGVUcmFuc2Zvcm1B
bmltYXRpb25zRnJvbUtleWZyYW1lcyhjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYgdmFsdWVMaXN0
LCBjb25zdCBBbmltYXRpb24qIGFuaW1hdGlvbiwgY29uc3QgU3RyaW5nJiBhbmltYXRpb25OYW1l
LCBkb3VibGUgdGltZU9mZnNldCwgY29uc3QgRmxvYXRTaXplJiBib3hTaXplKQogewogICAgIEFT
U0VSVCh2YWx1ZUxpc3QucHJvcGVydHkoKSA9PSBBbmltYXRlZFByb3BlcnR5V2Via2l0VHJhbnNm
b3JtKTsKIApAQCAtMjY3OSw3ICsyNjc5LDcgQEAgYm9vbCBHcmFwaGljc0xheWVyQ0E6OnNldEFu
aW1hdGlvbktleWZyYW1lcyhjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYgdmFsdWVMaXN0LAogICAg
IHJldHVybiB0cnVlOwogfQogCi1ib29sIEdyYXBoaWNzTGF5ZXJDQTo6c2V0VHJhbnNmb3JtQW5p
bWF0aW9uRW5kcG9pbnRzKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiB2YWx1ZUxpc3QsIGNvbnN0
IEFuaW1hdGlvbiogYW5pbWF0aW9uLCBQbGF0Zm9ybUNBQW5pbWF0aW9uKiBiYXNpY0FuaW0sIGlu
dCBmdW5jdGlvbkluZGV4LCBUcmFuc2Zvcm1PcGVyYXRpb246Ok9wZXJhdGlvblR5cGUgdHJhbnNm
b3JtT3BUeXBlLCBib29sIGlzTWF0cml4QW5pbWF0aW9uLCBjb25zdCBJbnRTaXplJiBib3hTaXpl
LCBWZWN0b3I8VHJhbnNmb3JtYXRpb25NYXRyaXg+JiBtYXRyaXhlcykKK2Jvb2wgR3JhcGhpY3NM
YXllckNBOjpzZXRUcmFuc2Zvcm1BbmltYXRpb25FbmRwb2ludHMoY29uc3QgS2V5ZnJhbWVWYWx1
ZUxpc3QmIHZhbHVlTGlzdCwgY29uc3QgQW5pbWF0aW9uKiBhbmltYXRpb24sIFBsYXRmb3JtQ0FB
bmltYXRpb24qIGJhc2ljQW5pbSwgaW50IGZ1bmN0aW9uSW5kZXgsIFRyYW5zZm9ybU9wZXJhdGlv
bjo6T3BlcmF0aW9uVHlwZSB0cmFuc2Zvcm1PcFR5cGUsIGJvb2wgaXNNYXRyaXhBbmltYXRpb24s
IGNvbnN0IEZsb2F0U2l6ZSYgYm94U2l6ZSwgVmVjdG9yPFRyYW5zZm9ybWF0aW9uTWF0cml4PiYg
bWF0cml4ZXMpCiB7CiAgICAgQVNTRVJUKHZhbHVlTGlzdC5zaXplKCkgPT0gMik7CiAKQEAgLTI3
NDUsNyArMjc0NSw3IEBAIGJvb2wgR3JhcGhpY3NMYXllckNBOjpzZXRUcmFuc2Zvcm1BbmltYXRp
b25FbmRwb2ludHMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIHZhCiAgICAgcmV0dXJuIHRydWU7
CiB9CiAKLWJvb2wgR3JhcGhpY3NMYXllckNBOjpzZXRUcmFuc2Zvcm1BbmltYXRpb25LZXlmcmFt
ZXMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIHZhbHVlTGlzdCwgY29uc3QgQW5pbWF0aW9uKiBh
bmltYXRpb24sIFBsYXRmb3JtQ0FBbmltYXRpb24qIGtleWZyYW1lQW5pbSwgaW50IGZ1bmN0aW9u
SW5kZXgsIFRyYW5zZm9ybU9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSB0cmFuc2Zvcm1PcFR5cGUs
IGJvb2wgaXNNYXRyaXhBbmltYXRpb24sIGNvbnN0IEludFNpemUmIGJveFNpemUsIFZlY3RvcjxU
cmFuc2Zvcm1hdGlvbk1hdHJpeD4mIG1hdHJpeGVzKQorYm9vbCBHcmFwaGljc0xheWVyQ0E6OnNl
dFRyYW5zZm9ybUFuaW1hdGlvbktleWZyYW1lcyhjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYgdmFs
dWVMaXN0LCBjb25zdCBBbmltYXRpb24qIGFuaW1hdGlvbiwgUGxhdGZvcm1DQUFuaW1hdGlvbiog
a2V5ZnJhbWVBbmltLCBpbnQgZnVuY3Rpb25JbmRleCwgVHJhbnNmb3JtT3BlcmF0aW9uOjpPcGVy
YXRpb25UeXBlIHRyYW5zZm9ybU9wVHlwZSwgYm9vbCBpc01hdHJpeEFuaW1hdGlvbiwgY29uc3Qg
RmxvYXRTaXplJiBib3hTaXplLCBWZWN0b3I8VHJhbnNmb3JtYXRpb25NYXRyaXg+JiBtYXRyaXhl
cykKIHsKICAgICBWZWN0b3I8ZmxvYXQ+IGtleVRpbWVzOwogICAgIFZlY3RvcjxmbG9hdD4gZmxv
YXRWYWx1ZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
YS9HcmFwaGljc0xheWVyQ0EuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nh
L0dyYXBoaWNzTGF5ZXJDQS5oCmluZGV4IDE5Y2QzNGNhNmI4ZGFlOGMxYzk0NzVlNTIyOWEyOTQz
Njc2YjRlZTUuLjkxOWJkNDNjYWIyZGMyZDIwYjU2NjY1ZWQwMTIzYjk1NWM1ZTEyNGYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL0dyYXBoaWNzTGF5ZXJD
QS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL0dyYXBoaWNzTGF5
ZXJDQS5oCkBAIC0xMTcsNyArMTE3LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzdXNw
ZW5kQW5pbWF0aW9ucyhkb3VibGUgdGltZSk7CiAgICAgdmlydHVhbCB2b2lkIHJlc3VtZUFuaW1h
dGlvbnMoKTsKIAotICAgIHZpcnR1YWwgYm9vbCBhZGRBbmltYXRpb24oY29uc3QgS2V5ZnJhbWVW
YWx1ZUxpc3QmLCBjb25zdCBJbnRTaXplJiBib3hTaXplLCBjb25zdCBBbmltYXRpb24qLCBjb25z
dCBTdHJpbmcmIGFuaW1hdGlvbk5hbWUsIGRvdWJsZSB0aW1lT2Zmc2V0KTsKKyAgICB2aXJ0dWFs
IGJvb2wgYWRkQW5pbWF0aW9uKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgRmxvYXRT
aXplJiBib3hTaXplLCBjb25zdCBBbmltYXRpb24qLCBjb25zdCBTdHJpbmcmIGFuaW1hdGlvbk5h
bWUsIGRvdWJsZSB0aW1lT2Zmc2V0KTsKICAgICB2aXJ0dWFsIHZvaWQgcGF1c2VBbmltYXRpb24o
Y29uc3QgU3RyaW5nJiBhbmltYXRpb25OYW1lLCBkb3VibGUgdGltZU9mZnNldCk7CiAgICAgdmly
dHVhbCB2b2lkIHJlbW92ZUFuaW1hdGlvbihjb25zdCBTdHJpbmcmIGFuaW1hdGlvbk5hbWUpOwog
CkBAIC0yMjUsNyArMjI1LDcgQEAgcHJpdmF0ZToKICAgICBMYXllck1hcCogYW5pbWF0ZWRMYXll
ckNsb25lcyhBbmltYXRlZFByb3BlcnR5SUQpIGNvbnN0OwogCiAgICAgYm9vbCBjcmVhdGVBbmlt
YXRpb25Gcm9tS2V5ZnJhbWVzKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgQW5pbWF0
aW9uKiwgY29uc3QgU3RyaW5nJiBhbmltYXRpb25OYW1lLCBkb3VibGUgdGltZU9mZnNldCk7Ci0g
ICAgYm9vbCBjcmVhdGVUcmFuc2Zvcm1BbmltYXRpb25zRnJvbUtleWZyYW1lcyhjb25zdCBLZXlm
cmFtZVZhbHVlTGlzdCYsIGNvbnN0IEFuaW1hdGlvbiosIGNvbnN0IFN0cmluZyYgYW5pbWF0aW9u
TmFtZSwgZG91YmxlIHRpbWVPZmZzZXQsIGNvbnN0IEludFNpemUmIGJveFNpemUpOworICAgIGJv
b2wgY3JlYXRlVHJhbnNmb3JtQW5pbWF0aW9uc0Zyb21LZXlmcmFtZXMoY29uc3QgS2V5ZnJhbWVW
YWx1ZUxpc3QmLCBjb25zdCBBbmltYXRpb24qLCBjb25zdCBTdHJpbmcmIGFuaW1hdGlvbk5hbWUs
IGRvdWJsZSB0aW1lT2Zmc2V0LCBjb25zdCBGbG9hdFNpemUmIGJveFNpemUpOwogI2lmIEVOQUJM
RShDU1NfRklMVEVSUykKICAgICBib29sIGNyZWF0ZUZpbHRlckFuaW1hdGlvbnNGcm9tS2V5ZnJh
bWVzKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgQW5pbWF0aW9uKiwgY29uc3QgU3Ry
aW5nJiBhbmltYXRpb25OYW1lLCBkb3VibGUgdGltZU9mZnNldCk7CiAjZW5kaWYKQEAgLTI0MCw4
ICsyNDAsOCBAQCBwcml2YXRlOgogICAgIGJvb2wgc2V0QW5pbWF0aW9uRW5kcG9pbnRzKGNvbnN0
IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgQW5pbWF0aW9uKiwgUGxhdGZvcm1DQUFuaW1hdGlv
biopOwogICAgIGJvb2wgc2V0QW5pbWF0aW9uS2V5ZnJhbWVzKGNvbnN0IEtleWZyYW1lVmFsdWVM
aXN0JiwgY29uc3QgQW5pbWF0aW9uKiwgUGxhdGZvcm1DQUFuaW1hdGlvbiopOwogCi0gICAgYm9v
bCBzZXRUcmFuc2Zvcm1BbmltYXRpb25FbmRwb2ludHMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3Qm
LCBjb25zdCBBbmltYXRpb24qLCBQbGF0Zm9ybUNBQW5pbWF0aW9uKiwgaW50IGZ1bmN0aW9uSW5k
ZXgsIFRyYW5zZm9ybU9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSwgYm9vbCBpc01hdHJpeEFuaW1h
dGlvbiwgY29uc3QgSW50U2l6ZSYgYm94U2l6ZSwgVmVjdG9yPFRyYW5zZm9ybWF0aW9uTWF0cml4
PiYgbWF0cml4ZXMpOwotICAgIGJvb2wgc2V0VHJhbnNmb3JtQW5pbWF0aW9uS2V5ZnJhbWVzKGNv
bnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgQW5pbWF0aW9uKiwgUGxhdGZvcm1DQUFuaW1h
dGlvbiosIGludCBmdW5jdGlvbkluZGV4LCBUcmFuc2Zvcm1PcGVyYXRpb246Ok9wZXJhdGlvblR5
cGUsIGJvb2wgaXNNYXRyaXhBbmltYXRpb24sIGNvbnN0IEludFNpemUmIGJveFNpemUsIFZlY3Rv
cjxUcmFuc2Zvcm1hdGlvbk1hdHJpeD4mIG1hdHJpeGVzKTsKKyAgICBib29sIHNldFRyYW5zZm9y
bUFuaW1hdGlvbkVuZHBvaW50cyhjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYsIGNvbnN0IEFuaW1h
dGlvbiosIFBsYXRmb3JtQ0FBbmltYXRpb24qLCBpbnQgZnVuY3Rpb25JbmRleCwgVHJhbnNmb3Jt
T3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlLCBib29sIGlzTWF0cml4QW5pbWF0aW9uLCBjb25zdCBG
bG9hdFNpemUmIGJveFNpemUsIFZlY3RvcjxUcmFuc2Zvcm1hdGlvbk1hdHJpeD4mIG1hdHJpeGVz
KTsKKyAgICBib29sIHNldFRyYW5zZm9ybUFuaW1hdGlvbktleWZyYW1lcyhjb25zdCBLZXlmcmFt
ZVZhbHVlTGlzdCYsIGNvbnN0IEFuaW1hdGlvbiosIFBsYXRmb3JtQ0FBbmltYXRpb24qLCBpbnQg
ZnVuY3Rpb25JbmRleCwgVHJhbnNmb3JtT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlLCBib29sIGlz
TWF0cml4QW5pbWF0aW9uLCBjb25zdCBGbG9hdFNpemUmIGJveFNpemUsIFZlY3RvcjxUcmFuc2Zv
cm1hdGlvbk1hdHJpeD4mIG1hdHJpeGVzKTsKICAgICAKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMp
CiAgICAgYm9vbCBzZXRGaWx0ZXJBbmltYXRpb25FbmRwb2ludHMoY29uc3QgS2V5ZnJhbWVWYWx1
ZUxpc3QmLCBjb25zdCBBbmltYXRpb24qLCBQbGF0Zm9ybUNBQW5pbWF0aW9uKiwgaW50IGZ1bmN0
aW9uSW5kZXgsIGludCBpbnRlcm5hbEZpbHRlclByb3BlcnR5SW5kZXgpOwpAQCAtNDA2LDcgKzQw
Niw3IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIHZvaWQgbW92ZU9yQ29weUxheWVyQW5pbWF0aW9u
KE1vdmVPckNvcHksIGNvbnN0IFN0cmluZyYgYW5pbWF0aW9uSWRlbnRpZmllciwgUGxhdGZvcm1D
QUxheWVyICpmcm9tTGF5ZXIsIFBsYXRmb3JtQ0FMYXllciAqdG9MYXllcik7CiAgICAgdm9pZCBt
b3ZlT3JDb3B5QW5pbWF0aW9ucyhNb3ZlT3JDb3B5LCBQbGF0Zm9ybUNBTGF5ZXIgKiBmcm9tTGF5
ZXIsIFBsYXRmb3JtQ0FMYXllciAqIHRvTGF5ZXIpOwogICAgIAotICAgIGJvb2wgYXBwZW5kVG9V
bmNvbW1pdHRlZEFuaW1hdGlvbnMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBUcmFu
c2Zvcm1PcGVyYXRpb25zKiwgY29uc3QgQW5pbWF0aW9uKiwgY29uc3QgU3RyaW5nJiBhbmltYXRp
b25OYW1lLCBjb25zdCBJbnRTaXplJiBib3hTaXplLCBpbnQgYW5pbWF0aW9uSW5kZXgsIGRvdWJs
ZSB0aW1lT2Zmc2V0LCBib29sIGlzTWF0cml4QW5pbWF0aW9uKTsKKyAgICBib29sIGFwcGVuZFRv
VW5jb21taXR0ZWRBbmltYXRpb25zKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgVHJh
bnNmb3JtT3BlcmF0aW9ucyosIGNvbnN0IEFuaW1hdGlvbiosIGNvbnN0IFN0cmluZyYgYW5pbWF0
aW9uTmFtZSwgY29uc3QgRmxvYXRTaXplJiBib3hTaXplLCBpbnQgYW5pbWF0aW9uSW5kZXgsIGRv
dWJsZSB0aW1lT2Zmc2V0LCBib29sIGlzTWF0cml4QW5pbWF0aW9uKTsKICNpZiBFTkFCTEUoQ1NT
X0ZJTFRFUlMpCiAgICAgYm9vbCBhcHBlbmRUb1VuY29tbWl0dGVkQW5pbWF0aW9ucyhjb25zdCBL
ZXlmcmFtZVZhbHVlTGlzdCYsIGNvbnN0IEZpbHRlck9wZXJhdGlvbiosIGNvbnN0IEFuaW1hdGlv
biosIGNvbnN0IFN0cmluZyYgYW5pbWF0aW9uTmFtZSwgaW50IGFuaW1hdGlvbkluZGV4LCBkb3Vi
bGUgdGltZU9mZnNldCk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyQmFja2luZy5jcHAKaW5kZXggZmYxMzI3OWU3ZWNiMTUwMWNhMDFjNzg2Y2VlMWQ2
MTQ1ODQ3NGYyZi4uZDQ3Zjk4Y2FmYTU0MTMyMTQ3ZmQ1YzcxODkwZjlmYWY0M2ZlMTlhMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKQEAg
LTI0MDAsNyArMjQwMCw3IEBAIGJvb2wgUmVuZGVyTGF5ZXJCYWNraW5nOjpzdGFydFRyYW5zaXRp
b24oZG91YmxlIHRpbWVPZmZzZXQsIENTU1Byb3BlcnR5SUQgcHJvcGVyCiAgICAgICAgICAgICBv
cGFjaXR5VmVjdG9yLmluc2VydChGbG9hdEFuaW1hdGlvblZhbHVlOjpjcmVhdGUoMCwgY29tcG9z
aXRpbmdPcGFjaXR5KGZyb21TdHlsZS0+b3BhY2l0eSgpKSkpOwogICAgICAgICAgICAgb3BhY2l0
eVZlY3Rvci5pbnNlcnQoRmxvYXRBbmltYXRpb25WYWx1ZTo6Y3JlYXRlKDEsIGNvbXBvc2l0aW5n
T3BhY2l0eSh0b1N0eWxlLT5vcGFjaXR5KCkpKSk7CiAgICAgICAgICAgICAvLyBUaGUgYm94U2l6
ZSBwYXJhbSBpcyBvbmx5IHVzZWQgZm9yIHRyYW5zZm9ybSBhbmltYXRpb25zICh3aGljaCBjYW4g
b25seSBydW4gb24gUmVuZGVyQm94ZXMpLCBzbyB3ZSBwYXNzIGFuIGVtcHR5IHNpemUgaGVyZS4K
LSAgICAgICAgICAgIGlmIChtX2dyYXBoaWNzTGF5ZXItPmFkZEFuaW1hdGlvbihvcGFjaXR5VmVj
dG9yLCBJbnRTaXplKCksIG9wYWNpdHlBbmltLCBHcmFwaGljc0xheWVyOjphbmltYXRpb25OYW1l
Rm9yVHJhbnNpdGlvbihBbmltYXRlZFByb3BlcnR5T3BhY2l0eSksIHRpbWVPZmZzZXQpKSB7Cisg
ICAgICAgICAgICBpZiAobV9ncmFwaGljc0xheWVyLT5hZGRBbmltYXRpb24ob3BhY2l0eVZlY3Rv
ciwgRmxvYXRTaXplKCksIG9wYWNpdHlBbmltLCBHcmFwaGljc0xheWVyOjphbmltYXRpb25OYW1l
Rm9yVHJhbnNpdGlvbihBbmltYXRlZFByb3BlcnR5T3BhY2l0eSksIHRpbWVPZmZzZXQpKSB7CiAg
ICAgICAgICAgICAgICAgLy8gVG8gZW5zdXJlIHRoYXQgdGhlIGNvcnJlY3Qgb3BhY2l0eSBpcyB2
aXNpYmxlIHdoZW4gdGhlIGFuaW1hdGlvbiBlbmRzLCBhbHNvIHNldCB0aGUgZmluYWwgb3BhY2l0
eS4KICAgICAgICAgICAgICAgICB1cGRhdGVPcGFjaXR5KHRvU3R5bGUpOwogICAgICAgICAgICAg
ICAgIGRpZEFuaW1hdGUgPSB0cnVlOwpAQCAtMjQyOSw3ICsyNDI5LDcgQEAgYm9vbCBSZW5kZXJM
YXllckJhY2tpbmc6OnN0YXJ0VHJhbnNpdGlvbihkb3VibGUgdGltZU9mZnNldCwgQ1NTUHJvcGVy
dHlJRCBwcm9wZXIKICAgICAgICAgICAgIEtleWZyYW1lVmFsdWVMaXN0IGZpbHRlclZlY3RvcihB
bmltYXRlZFByb3BlcnR5V2Via2l0RmlsdGVyKTsKICAgICAgICAgICAgIGZpbHRlclZlY3Rvci5p
bnNlcnQoRmlsdGVyQW5pbWF0aW9uVmFsdWU6OmNyZWF0ZSgwLCBmcm9tU3R5bGUtPmZpbHRlcigp
KSk7CiAgICAgICAgICAgICBmaWx0ZXJWZWN0b3IuaW5zZXJ0KEZpbHRlckFuaW1hdGlvblZhbHVl
OjpjcmVhdGUoMSwgdG9TdHlsZS0+ZmlsdGVyKCkpKTsKLSAgICAgICAgICAgIGlmIChtX2dyYXBo
aWNzTGF5ZXItPmFkZEFuaW1hdGlvbihmaWx0ZXJWZWN0b3IsIEludFNpemUoKSwgZmlsdGVyQW5p
bSwgR3JhcGhpY3NMYXllcjo6YW5pbWF0aW9uTmFtZUZvclRyYW5zaXRpb24oQW5pbWF0ZWRQcm9w
ZXJ0eVdlYmtpdEZpbHRlciksIHRpbWVPZmZzZXQpKSB7CisgICAgICAgICAgICBpZiAobV9ncmFw
aGljc0xheWVyLT5hZGRBbmltYXRpb24oZmlsdGVyVmVjdG9yLCBGbG9hdFNpemUoKSwgZmlsdGVy
QW5pbSwgR3JhcGhpY3NMYXllcjo6YW5pbWF0aW9uTmFtZUZvclRyYW5zaXRpb24oQW5pbWF0ZWRQ
cm9wZXJ0eVdlYmtpdEZpbHRlciksIHRpbWVPZmZzZXQpKSB7CiAgICAgICAgICAgICAgICAgLy8g
VG8gZW5zdXJlIHRoYXQgdGhlIGNvcnJlY3QgZmlsdGVyIGlzIHZpc2libGUgd2hlbiB0aGUgYW5p
bWF0aW9uIGVuZHMsIGFsc28gc2V0IHRoZSBmaW5hbCBmaWx0ZXIuCiAgICAgICAgICAgICAgICAg
dXBkYXRlRmlsdGVycyh0b1N0eWxlKTsKICAgICAgICAgICAgICAgICBkaWRBbmltYXRlID0gdHJ1
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvR3Jh
cGhpY3NMYXllckNBUmVtb3RlLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
bWFjL0dyYXBoaWNzTGF5ZXJDQVJlbW90ZS5oCmluZGV4IDFlMzQwYjY4NzQ5MjYyMGQ4NjAwNzg4
ZThhYjM1YTdkNGI0MzJlN2YuLjJkOTQxMmQzOGFiZjYxZWM2YTJmOGM2ZDZmMWNmZmZiNWI3ZDM2
MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvR3Jh
cGhpY3NMYXllckNBUmVtb3RlLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL21hYy9HcmFwaGljc0xheWVyQ0FSZW1vdGUuaApAQCAtNTQsNyArNTQsNyBAQCBwcml2YXRl
OgogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxXZWJDb3JlOjpQbGF0Zm9ybUNBTGF5ZXI+IGNyZWF0
ZVBsYXRmb3JtQ0FMYXllcihQbGF0Zm9ybUxheWVyKiwgV2ViQ29yZTo6UGxhdGZvcm1DQUxheWVy
Q2xpZW50KiBvd25lcikgb3ZlcnJpZGU7CiAKICAgICAvLyBObyBhY2NlbGVyYXRlZCBhbmltYXRp
b25zIGZvciBub3cuCi0gICAgdmlydHVhbCBib29sIGFkZEFuaW1hdGlvbihjb25zdCBXZWJDb3Jl
OjpLZXlmcmFtZVZhbHVlTGlzdCYsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBjb25zdCBXZWJD
b3JlOjpBbmltYXRpb24qLCBjb25zdCBTdHJpbmcmLCBkb3VibGUpIG92ZXJyaWRlIHsgcmV0dXJu
IGZhbHNlOyB9CisgICAgdmlydHVhbCBib29sIGFkZEFuaW1hdGlvbihjb25zdCBXZWJDb3JlOjpL
ZXlmcmFtZVZhbHVlTGlzdCYsIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYsIGNvbnN0IFdlYkNv
cmU6OkFuaW1hdGlvbiosIGNvbnN0IFN0cmluZyYsIGRvdWJsZSkgb3ZlcnJpZGUgeyByZXR1cm4g
ZmFsc2U7IH0KIAogICAgIC8vIFBsYXRmb3JtQ0FMYXllclJlbW90ZSBjYW4ndCBjdXJyZW50bHkg
cHJveHkgZGlyZWN0bHkgY29tcG9zaXRlZCBpbWFnZSBjb250ZW50cywgc28gb3B0IG91dCBvZiB0
aGlzIG9wdGltaXphdGlvbi4KICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRGlyZWN0bHlDb21wb3Np
dGVJbWFnZShXZWJDb3JlOjpJbWFnZSopIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>226246</attachid>
            <date>2014-03-08 20:10:04 -0800</date>
            <delta_ts>2014-03-09 13:21:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-129985-20140308200949.patch</filename>
            <type>text/plain</type>
            <size>23684</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY1MzQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODk4OTk1ZTU1NGE2MWQ2
ZWY4N2Q1NGFmOTdlYTBmNzVkMTBiZTY1NC4uMmJiNDYwOTkxMzE0OTFhNTEyMjNjODM0YWRhZTFl
NDYyYmNmYjlhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMwIEBACiAyMDE0LTAzLTA4ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKKyAgICAgICAgU3VicGl4ZWwgcmVuZGVyaW5n
OiBQYXNzIEZsb2F0U2l6ZSBib3hzaXplIHRvIHRyYW5zZm9ybSBhbmltYXRpb25zIHRvIHN1cHBv
cnQgZGV2aWNlIHBpeGVsIHNpemluZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyOTk4NQorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNl
ci4KKworICAgICAgICBUaGlzIGlzIGluIHByZXBhcmF0aW9uIHRvIHN0b3AgcGFzc2luZyBpbnRl
Z3JhbCBwb3NpdGlvbmVkIGJveGVzIHRvIHRyYW5zZm9ybSBhbmltYXRpb25zLgorCisgICAgICAg
IE5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzTGF5ZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkdyYXBoaWNzTGF5ZXI6OmFkZEFuaW1hdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvY2EvR3JhcGhpY3NMYXllckNBLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdldFRyYW5z
Zm9ybUZ1bmN0aW9uVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllckNBOjph
ZGRBbmltYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllckNBOjphcHBlbmRU
b1VuY29tbWl0dGVkQW5pbWF0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVy
Q0E6OmNyZWF0ZVRyYW5zZm9ybUFuaW1hdGlvbnNGcm9tS2V5ZnJhbWVzKToKKyAgICAgICAgKFdl
YkNvcmU6OkdyYXBoaWNzTGF5ZXJDQTo6c2V0VHJhbnNmb3JtQW5pbWF0aW9uRW5kcG9pbnRzKToK
KyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJDQTo6c2V0VHJhbnNmb3JtQW5pbWF0aW9u
S2V5ZnJhbWVzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9HcmFwaGljc0xheWVy
Q0EuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQmFja2luZzo6c3RhcnRUcmFuc2l0aW9uKToKKworMjAx
NC0wMy0wOCAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgorCiAgICAgICAgIFN1YnBp
eGVsIHJlbmRlcmluZzogU2ltcGxlIGNvbXBvc2l0aW5nIGNvbnRhaW5lciBsYXllciAoaXNTaW1w
bGVDb250YWluZXJDb21wb3NpdGluZ0xheWVyKSBwYWludHMgdG8gd3JvbmcgcG9zaXRpb24uCiAg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk4NjEKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCmluZGV4IDkyNmI1MWY0ZTExZDUxOWY1OTIzYTg4Mjk2YWE1Njg3NTE4OWM3YmIuLmQw
Y2YzODEwMTc4ZTVkNjNmMWM3MWFjOTIzOWQ3NGVhMzk5OGY3N2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxNC0wMy0wOCAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgor
CisgICAgICAgIFN1YnBpeGVsIHJlbmRlcmluZzogUGFzcyBGbG9hdFNpemUgYm94c2l6ZSB0byB0
cmFuc2Zvcm0gYW5pbWF0aW9ucyB0byBzdXBwb3J0IGRldmljZSBwaXhlbCBzaXppbmcuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk5ODUKKworICAg
ICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgVGhpcyBpcyBpbiBwcmVw
YXJhdGlvbiB0byBzdG9wIHBhc3NpbmcgaW50ZWdyYWwgcG9zaXRpb25lZCBib3hlcyB0byB0cmFu
c2Zvcm0gYW5pbWF0aW9ucy4KKworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL0dyYXBoaWNzTGF5ZXJDQVJlbW90ZS5oOgor
CiAyMDE0LTAzLTA4ICBKYWUgSHl1biBQYXJrICA8amFlcGFya0B3ZWJraXQub3JnPgogCiAgICAg
ICAgIFJlbW92ZSB1bm5lY2Vzc2FyeSBjYXN0aW5nIGluIE5ldHdvcmtQcm9jZXNzTWFpblVuaXgu
Y3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbiBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IDdlMjgxNzhhZjQzNmRkMjdkYmE5ZGVhZGI3NmUx
M2MyZWJiNmMzMWMuLjllMDkxNGIxOTY3ZGI1ODdiNzVjM2ExODBhZWFlMWM3NDkyYWM1ODggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUuZXhwLmluCkBAIC01MjEsNyArNTIxLDcgQEAgX19aTjdXZWJDb3JlMTVHcmFw
aGljc0xheWVyQ0ExMHNldEZpbHRlcnNFUktOU18xNkZpbHRlck9wZXJhdGlvbnNFCiBfX1pON1dl
YkNvcmUxNUdyYXBoaWNzTGF5ZXJDQTEwc2V0T3BhY2l0eUVmCiBfX1pON1dlYkNvcmUxNUdyYXBo
aWNzTGF5ZXJDQTExc2V0Q2hpbGRyZW5FUktOM1dURjZWZWN0b3JJUE5TXzEzR3JhcGhpY3NMYXll
ckVMbTBFTlMxXzE1Q3Jhc2hPbk92ZXJmbG93RUVFCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzTGF5
ZXJDQTExc2V0UG9zaXRpb25FUktOU18xMEZsb2F0UG9pbnRFCi1fX1pON1dlYkNvcmUxNUdyYXBo
aWNzTGF5ZXJDQTEyYWRkQW5pbWF0aW9uRVJLTlNfMTdLZXlmcmFtZVZhbHVlTGlzdEVSS05TXzdJ
bnRTaXplRVBLTlNfOUFuaW1hdGlvbkVSS04zV1RGNlN0cmluZ0VkCitfX1pON1dlYkNvcmUxNUdy
YXBoaWNzTGF5ZXJDQTEyYWRkQW5pbWF0aW9uRVJLTlNfMTdLZXlmcmFtZVZhbHVlTGlzdEVSS05T
XzlGbG9hdFNpemVFUEtOU185QW5pbWF0aW9uRVJLTjNXVEY2U3RyaW5nRWQKIF9fWk43V2ViQ29y
ZTE1R3JhcGhpY3NMYXllckNBMTJyZXBsYWNlQ2hpbGRFUE5TXzEzR3JhcGhpY3NMYXllckVTMl8K
IF9fWk43V2ViQ29yZTE1R3JhcGhpY3NMYXllckNBMTJzZXRCbGVuZE1vZGVFTlNfOUJsZW5kTW9k
ZUUKIF9fWk43V2ViQ29yZTE1R3JhcGhpY3NMYXllckNBMTJzZXRNYXNrTGF5ZXJFUE5TXzEzR3Jh
cGhpY3NMYXllckUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0dyYXBoaWNzTGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBo
aWNzTGF5ZXIuaAppbmRleCBjNGY2YzlkY2NiODhiOTU0Yjk5NWFjYjQwZjFiZjFhZTBiMmVhN2Ux
Li5hMTRkNWUwNGNiOTU5N2NiN2IxYjc3NDBhOTBkZGU0N2E2YTI0MWRhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0xheWVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllci5oCkBAIC0zODgsNyAr
Mzg4LDcgQEAgcHVibGljOgogICAgIC8vIFJldHVybiB0cnVlIGlmIHRoZSBhbmltYXRpb24gaXMg
aGFuZGxlZCBieSB0aGUgY29tcG9zaXRpbmcgc3lzdGVtLiBJZiB0aGlzIHJldHVybnMKICAgICAv
LyBmYWxzZSwgdGhlIGFuaW1hdGlvbiB3aWxsIGJlIHJ1biBieSBBbmltYXRpb25Db250cm9sbGVy
LgogICAgIC8vIFRoZXNlIG1ldGhvZHMgaGFuZGxlIGJvdGggdHJhbnNpdGlvbnMgYW5kIGtleWZy
YW1lIGFuaW1hdGlvbnMuCi0gICAgdmlydHVhbCBib29sIGFkZEFuaW1hdGlvbihjb25zdCBLZXlm
cmFtZVZhbHVlTGlzdCYsIGNvbnN0IEludFNpemUmIC8qYm94U2l6ZSovLCBjb25zdCBBbmltYXRp
b24qLCBjb25zdCBTdHJpbmcmIC8qYW5pbWF0aW9uTmFtZSovLCBkb3VibGUgLyp0aW1lT2Zmc2V0
Ki8pICB7IHJldHVybiBmYWxzZTsgfQorICAgIHZpcnR1YWwgYm9vbCBhZGRBbmltYXRpb24oY29u
c3QgS2V5ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBGbG9hdFNpemUmIC8qYm94U2l6ZSovLCBjb25z
dCBBbmltYXRpb24qLCBjb25zdCBTdHJpbmcmIC8qYW5pbWF0aW9uTmFtZSovLCBkb3VibGUgLyp0
aW1lT2Zmc2V0Ki8pICB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgdm9pZCBwYXVzZUFu
aW1hdGlvbihjb25zdCBTdHJpbmcmIC8qYW5pbWF0aW9uTmFtZSovLCBkb3VibGUgLyp0aW1lT2Zm
c2V0Ki8pIHsgfQogICAgIHZpcnR1YWwgdm9pZCByZW1vdmVBbmltYXRpb24oY29uc3QgU3RyaW5n
JiAvKmFuaW1hdGlvbk5hbWUqLykgeyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzTGF5ZXJBbmltYXRpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllckFuaW1hdGlvbi5jcHAKaW5kZXggNjQ1
MDY2ZTllYmM3YTc1MmVlMmJkMWNiN2U0NTAxNzU0ZmYwMWViOC4uZGM5YTY5YjNjMjk0YzRhNDFi
OTc4OWJkZWYxMmU3NTU4ZmE1NGZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllckFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllckFuaW1hdGlvbi5jcHAKQEAgLTI4LDE3
ICsyOCwxNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAjaWYgRU5BQkxFKENTU19GSUxURVJT
KQotc3RhdGljIGlubGluZSBQYXNzUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4gYmxlbmRGdW5jKEZp
bHRlck9wZXJhdGlvbiogZnJvbU9wLCBGaWx0ZXJPcGVyYXRpb24qIHRvT3AsIGRvdWJsZSBwcm9n
cmVzcywgY29uc3QgSW50U2l6ZSYgc2l6ZSwgYm9vbCBibGVuZFRvUGFzc3Rocm91Z2ggPSBmYWxz
ZSkKK3N0YXRpYyBpbmxpbmUgUGFzc1JlZlB0cjxGaWx0ZXJPcGVyYXRpb24+IGJsZW5kRnVuYyhG
aWx0ZXJPcGVyYXRpb24qIGZyb21PcCwgRmlsdGVyT3BlcmF0aW9uKiB0b09wLCBkb3VibGUgcHJv
Z3Jlc3MsIGNvbnN0IEZsb2F0U2l6ZSYgc2l6ZSwgYm9vbCBibGVuZFRvUGFzc3Rocm91Z2ggPSBm
YWxzZSkKIHsKICAgICBBU1NFUlQodG9PcCk7CiAgICAgaWYgKHRvT3AtPmJsZW5kaW5nTmVlZHNS
ZW5kZXJlclNpemUoKSkKLSAgICAgICAgcmV0dXJuIHRvT3AtPmJsZW5kKGZyb21PcCwgcHJvZ3Jl
c3MsIExheW91dFNpemUoc2l6ZS53aWR0aCgpLCBzaXplLmhlaWdodCgpKSwgYmxlbmRUb1Bhc3N0
aHJvdWdoKTsKKyAgICAgICAgcmV0dXJuIHRvT3AtPmJsZW5kKGZyb21PcCwgcHJvZ3Jlc3MsIExh
eW91dFNpemUoc2l6ZSksIGJsZW5kVG9QYXNzdGhyb3VnaCk7CiAKICAgICByZXR1cm4gdG9PcC0+
YmxlbmQoZnJvbU9wLCBwcm9ncmVzcywgYmxlbmRUb1Bhc3N0aHJvdWdoKTsKIH0KIAogCi1zdGF0
aWMgRmlsdGVyT3BlcmF0aW9ucyBhcHBseUZpbHRlckFuaW1hdGlvbihjb25zdCBGaWx0ZXJPcGVy
YXRpb25zJiBmcm9tLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiB0bywgZG91YmxlIHByb2dyZXNz
LCBjb25zdCBJbnRTaXplJiBib3hTaXplKQorc3RhdGljIEZpbHRlck9wZXJhdGlvbnMgYXBwbHlG
aWx0ZXJBbmltYXRpb24oY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZnJvbSwgY29uc3QgRmlsdGVy
T3BlcmF0aW9ucyYgdG8sIGRvdWJsZSBwcm9ncmVzcywgY29uc3QgRmxvYXRTaXplJiBib3hTaXpl
KQogewogICAgIC8vIEZpcnN0IGZyYW1lIG9mIGFuIGFuaW1hdGlvbi4KICAgICBpZiAoIXByb2dy
ZXNzKQpAQCAtMTU0LDcgKzE1NCw3IEBAIHN0YXRpYyBpbmxpbmUgZmxvYXQgYXBwbHlUaW1pbmdG
dW5jdGlvbihjb25zdCBUaW1pbmdGdW5jdGlvbiogdGltaW5nRnVuY3Rpb24sIGZsCiAgICAgcmV0
dXJuIHByb2dyZXNzOwogfQogCi1zdGF0aWMgVHJhbnNmb3JtYXRpb25NYXRyaXggYXBwbHlUcmFu
c2Zvcm1BbmltYXRpb24oY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9ucyYgZnJvbSwgY29uc3QgVHJh
bnNmb3JtT3BlcmF0aW9ucyYgdG8sIGRvdWJsZSBwcm9ncmVzcywgY29uc3QgSW50U2l6ZSYgYm94
U2l6ZSwgYm9vbCBsaXN0c01hdGNoKQorc3RhdGljIFRyYW5zZm9ybWF0aW9uTWF0cml4IGFwcGx5
VHJhbnNmb3JtQW5pbWF0aW9uKGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbnMmIGZyb20sIGNvbnN0
IFRyYW5zZm9ybU9wZXJhdGlvbnMmIHRvLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IEZsb2F0U2l6
ZSYgYm94U2l6ZSwgYm9vbCBsaXN0c01hdGNoKQogewogICAgIFRyYW5zZm9ybWF0aW9uTWF0cml4
IG1hdHJpeDsKIApAQCAtMjEyLDcgKzIxMiw3IEBAIHN0YXRpYyBjb25zdCBUaW1pbmdGdW5jdGlv
biogdGltaW5nRnVuY3Rpb25Gb3JBbmltYXRpb25WYWx1ZShjb25zdCBBbmltYXRpb25WYWx1CiAg
ICAgcmV0dXJuIEN1YmljQmV6aWVyVGltaW5nRnVuY3Rpb246OmRlZmF1bHRUaW1pbmdGdW5jdGlv
bigpOwogfQogCi1HcmFwaGljc0xheWVyQW5pbWF0aW9uOjpHcmFwaGljc0xheWVyQW5pbWF0aW9u
KGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIGtleWZyYW1lcywg
Y29uc3QgSW50U2l6ZSYgYm94U2l6ZSwgY29uc3QgQW5pbWF0aW9uKiBhbmltYXRpb24sIGRvdWJs
ZSBzdGFydFRpbWUsIGJvb2wgbGlzdHNNYXRjaCkKK0dyYXBoaWNzTGF5ZXJBbmltYXRpb246Okdy
YXBoaWNzTGF5ZXJBbmltYXRpb24oY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBLZXlmcmFtZVZh
bHVlTGlzdCYga2V5ZnJhbWVzLCBjb25zdCBGbG9hdFNpemUmIGJveFNpemUsIGNvbnN0IEFuaW1h
dGlvbiogYW5pbWF0aW9uLCBkb3VibGUgc3RhcnRUaW1lLCBib29sIGxpc3RzTWF0Y2gpCiAgICAg
OiBtX2tleWZyYW1lcyhrZXlmcmFtZXMpCiAgICAgLCBtX2JveFNpemUoYm94U2l6ZSkKICAgICAs
IG1fYW5pbWF0aW9uKEFuaW1hdGlvbjo6Y3JlYXRlKCphbmltYXRpb24pKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllckFuaW1hdGlvbi5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllckFuaW1hdGlv
bi5oCmluZGV4IDhmMzdmZTQxMzdlMjhkNjFmOGUzODc5YjY3Y2M0ZGFkZjUzMmU4YzIuLmQ1NTE3
MzJhYTEyZjVhMzhmMjQzNTEzYTY4ZGEyNjA4MzNiOGEzM2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzTGF5ZXJBbmltYXRpb24uaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0xheWVyQW5pbWF0aW9uLmgK
QEAgLTQyLDcgKzQyLDcgQEAgcHVibGljOgogICAgIEdyYXBoaWNzTGF5ZXJBbmltYXRpb24oKQog
ICAgICAgICA6IG1fa2V5ZnJhbWVzKEFuaW1hdGVkUHJvcGVydHlJbnZhbGlkKQogICAgIHsgfQot
ICAgIEdyYXBoaWNzTGF5ZXJBbmltYXRpb24oY29uc3QgU3RyaW5nJiwgY29uc3QgS2V5ZnJhbWVW
YWx1ZUxpc3QmLCBjb25zdCBJbnRTaXplJiwgY29uc3QgQW5pbWF0aW9uKiwgZG91YmxlLCBib29s
KTsKKyAgICBHcmFwaGljc0xheWVyQW5pbWF0aW9uKGNvbnN0IFN0cmluZyYsIGNvbnN0IEtleWZy
YW1lVmFsdWVMaXN0JiwgY29uc3QgRmxvYXRTaXplJiwgY29uc3QgQW5pbWF0aW9uKiwgZG91Ymxl
LCBib29sKTsKICAgICB2b2lkIGFwcGx5KENsaWVudCopOwogICAgIHZvaWQgcGF1c2UoZG91Ymxl
KTsKICAgICB2b2lkIHJlc3VtZSgpOwpAQCAtNTYsNyArNTYsNyBAQCBwdWJsaWM6CiAgICAgQW5p
bWF0ZWRQcm9wZXJ0eUlEIHByb3BlcnR5KCkgY29uc3QgeyByZXR1cm4gbV9rZXlmcmFtZXMucHJv
cGVydHkoKTsgfQogICAgIGJvb2wgaXNBY3RpdmUoKSBjb25zdDsKICAgICBTdHJpbmcgbmFtZSgp
IGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQotICAgIEludFNpemUgYm94U2l6ZSgpIGNvbnN0IHsg
cmV0dXJuIG1fYm94U2l6ZTsgfQorICAgIEZsb2F0U2l6ZSBib3hTaXplKCkgY29uc3QgeyByZXR1
cm4gbV9ib3hTaXplOyB9CiAgICAgZG91YmxlIHN0YXJ0VGltZSgpIGNvbnN0IHsgcmV0dXJuIG1f
c3RhcnRUaW1lOyB9CiAgICAgZG91YmxlIHBhdXNlVGltZSgpIGNvbnN0IHsgcmV0dXJuIG1fcGF1
c2VUaW1lOyB9CiAgICAgUGFzc1JlZlB0cjxBbmltYXRpb24+IGFuaW1hdGlvbigpIGNvbnN0IHsg
cmV0dXJuIG1fYW5pbWF0aW9uLmdldCgpOyB9CkBAIC02Niw3ICs2Niw3IEBAIHB1YmxpYzoKIHBy
aXZhdGU6CiAgICAgdm9pZCBhcHBseUludGVybmFsKENsaWVudCosIGNvbnN0IEFuaW1hdGlvblZh
bHVlJiBmcm9tLCBjb25zdCBBbmltYXRpb25WYWx1ZSYgdG8sIGZsb2F0IHByb2dyZXNzKTsKICAg
ICBLZXlmcmFtZVZhbHVlTGlzdCBtX2tleWZyYW1lczsKLSAgICBJbnRTaXplIG1fYm94U2l6ZTsK
KyAgICBGbG9hdFNpemUgbV9ib3hTaXplOwogICAgIFJlZlB0cjxBbmltYXRpb24+IG1fYW5pbWF0
aW9uOwogICAgIFN0cmluZyBtX25hbWU7CiAgICAgYm9vbCBtX2xpc3RzTWF0Y2g7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9HcmFwaGljc0xheWVyQ0Eu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvR3JhcGhpY3NMYXllckNB
LmNwcAppbmRleCAxYWY4NGUxMWNjNjI2ZDZjZWRiYzQwZmQ5ZDJhM2NmOTk5NDJmN2I3Li5jZjcw
ZjUzY2U3YmQ5YTkxOTk5NmMxOTdlOGJiNDg2NjQ3YmZhYzFiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9HcmFwaGljc0xheWVyQ0EuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL0dyYXBoaWNzTGF5ZXJDQS5jcHAKQEAg
LTEyOSw3ICsxMjksNyBAQCBzdGF0aWMgYm9vbCBpc1RyYW5zZm9ybVR5cGVOdW1iZXIoVHJhbnNm
b3JtT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHRyYW5zZm9ybVR5cAogICAgIHJldHVybiAhaXNU
cmFuc2Zvcm1UeXBlVHJhbnNmb3JtYXRpb25NYXRyaXgodHJhbnNmb3JtVHlwZSkgJiYgIWlzVHJh
bnNmb3JtVHlwZUZsb2F0UG9pbnQzRCh0cmFuc2Zvcm1UeXBlKTsKIH0KIAotc3RhdGljIHZvaWQg
Z2V0VHJhbnNmb3JtRnVuY3Rpb25WYWx1ZShjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb24qIHRyYW5z
Zm9ybU9wLCBUcmFuc2Zvcm1PcGVyYXRpb246Ok9wZXJhdGlvblR5cGUgdHJhbnNmb3JtVHlwZSwg
Y29uc3QgSW50U2l6ZSYgc2l6ZSwgZmxvYXQmIHZhbHVlKQorc3RhdGljIHZvaWQgZ2V0VHJhbnNm
b3JtRnVuY3Rpb25WYWx1ZShjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb24qIHRyYW5zZm9ybU9wLCBU
cmFuc2Zvcm1PcGVyYXRpb246Ok9wZXJhdGlvblR5cGUgdHJhbnNmb3JtVHlwZSwgY29uc3QgRmxv
YXRTaXplJiBzaXplLCBmbG9hdCYgdmFsdWUpCiB7CiAgICAgc3dpdGNoICh0cmFuc2Zvcm1UeXBl
KSB7CiAgICAgY2FzZSBUcmFuc2Zvcm1PcGVyYXRpb246OlJPVEFURToKQEAgLTE2MCw3ICsxNjAs
NyBAQCBzdGF0aWMgdm9pZCBnZXRUcmFuc2Zvcm1GdW5jdGlvblZhbHVlKGNvbnN0IFRyYW5zZm9y
bU9wZXJhdGlvbiogdHJhbnNmb3JtT3AsIFRyYQogICAgIH0KIH0KIAotc3RhdGljIHZvaWQgZ2V0
VHJhbnNmb3JtRnVuY3Rpb25WYWx1ZShjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb24qIHRyYW5zZm9y
bU9wLCBUcmFuc2Zvcm1PcGVyYXRpb246Ok9wZXJhdGlvblR5cGUgdHJhbnNmb3JtVHlwZSwgY29u
c3QgSW50U2l6ZSYgc2l6ZSwgRmxvYXRQb2ludDNEJiB2YWx1ZSkKK3N0YXRpYyB2b2lkIGdldFRy
YW5zZm9ybUZ1bmN0aW9uVmFsdWUoY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9uKiB0cmFuc2Zvcm1P
cCwgVHJhbnNmb3JtT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHRyYW5zZm9ybVR5cGUsIGNvbnN0
IEZsb2F0U2l6ZSYgc2l6ZSwgRmxvYXRQb2ludDNEJiB2YWx1ZSkKIHsKICAgICBzd2l0Y2ggKHRy
YW5zZm9ybVR5cGUpIHsKICAgICBjYXNlIFRyYW5zZm9ybU9wZXJhdGlvbjo6U0NBTEU6CkBAIC0x
ODAsNyArMTgwLDcgQEAgc3RhdGljIHZvaWQgZ2V0VHJhbnNmb3JtRnVuY3Rpb25WYWx1ZShjb25z
dCBUcmFuc2Zvcm1PcGVyYXRpb24qIHRyYW5zZm9ybU9wLCBUcmEKICAgICB9CiB9CiAKLXN0YXRp
YyB2b2lkIGdldFRyYW5zZm9ybUZ1bmN0aW9uVmFsdWUoY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9u
KiB0cmFuc2Zvcm1PcCwgVHJhbnNmb3JtT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHRyYW5zZm9y
bVR5cGUsIGNvbnN0IEludFNpemUmIHNpemUsIFRyYW5zZm9ybWF0aW9uTWF0cml4JiB2YWx1ZSkK
K3N0YXRpYyB2b2lkIGdldFRyYW5zZm9ybUZ1bmN0aW9uVmFsdWUoY29uc3QgVHJhbnNmb3JtT3Bl
cmF0aW9uKiB0cmFuc2Zvcm1PcCwgVHJhbnNmb3JtT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHRy
YW5zZm9ybVR5cGUsIGNvbnN0IEZsb2F0U2l6ZSYgc2l6ZSwgVHJhbnNmb3JtYXRpb25NYXRyaXgm
IHZhbHVlKQogewogICAgIHN3aXRjaCAodHJhbnNmb3JtVHlwZSkgewogICAgIGNhc2UgVHJhbnNm
b3JtT3BlcmF0aW9uOjpTS0VXX1g6CkBAIC03ODcsNyArNzg3LDcgQEAgYm9vbCBHcmFwaGljc0xh
eWVyQ0E6OnNob3VsZFJlcGFpbnRPblNpemVDaGFuZ2UoKSBjb25zdAogICAgIHJldHVybiBkcmF3
c0NvbnRlbnQoKSAmJiAhdGlsZWRCYWNraW5nKCk7CiB9CiAKLWJvb2wgR3JhcGhpY3NMYXllckNB
OjphZGRBbmltYXRpb24oY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIHZhbHVlTGlzdCwgY29uc3Qg
SW50U2l6ZSYgYm94U2l6ZSwgY29uc3QgQW5pbWF0aW9uKiBhbmltLCBjb25zdCBTdHJpbmcmIGFu
aW1hdGlvbk5hbWUsIGRvdWJsZSB0aW1lT2Zmc2V0KQorYm9vbCBHcmFwaGljc0xheWVyQ0E6OmFk
ZEFuaW1hdGlvbihjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYgdmFsdWVMaXN0LCBjb25zdCBGbG9h
dFNpemUmIGJveFNpemUsIGNvbnN0IEFuaW1hdGlvbiogYW5pbSwgY29uc3QgU3RyaW5nJiBhbmlt
YXRpb25OYW1lLCBkb3VibGUgdGltZU9mZnNldCkKIHsKICAgICBBU1NFUlQoIWFuaW1hdGlvbk5h
bWUuaXNFbXB0eSgpKTsKIApAQCAtMjM3OCw3ICsyMzc4LDcgQEAgYm9vbCBHcmFwaGljc0xheWVy
Q0E6OmNyZWF0ZUFuaW1hdGlvbkZyb21LZXlmcmFtZXMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3Qm
IHZhbHUKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBHcmFwaGljc0xheWVyQ0E6OmFwcGVu
ZFRvVW5jb21taXR0ZWRBbmltYXRpb25zKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiB2YWx1ZUxp
c3QsIGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbnMqIG9wZXJhdGlvbnMsIGNvbnN0IEFuaW1hdGlv
biogYW5pbWF0aW9uLCBjb25zdCBTdHJpbmcmIGFuaW1hdGlvbk5hbWUsIGNvbnN0IEludFNpemUm
IGJveFNpemUsIGludCBhbmltYXRpb25JbmRleCwgZG91YmxlIHRpbWVPZmZzZXQsIGJvb2wgaXNN
YXRyaXhBbmltYXRpb24pCitib29sIEdyYXBoaWNzTGF5ZXJDQTo6YXBwZW5kVG9VbmNvbW1pdHRl
ZEFuaW1hdGlvbnMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIHZhbHVlTGlzdCwgY29uc3QgVHJh
bnNmb3JtT3BlcmF0aW9ucyogb3BlcmF0aW9ucywgY29uc3QgQW5pbWF0aW9uKiBhbmltYXRpb24s
IGNvbnN0IFN0cmluZyYgYW5pbWF0aW9uTmFtZSwgY29uc3QgRmxvYXRTaXplJiBib3hTaXplLCBp
bnQgYW5pbWF0aW9uSW5kZXgsIGRvdWJsZSB0aW1lT2Zmc2V0LCBib29sIGlzTWF0cml4QW5pbWF0
aW9uKQogewogICAgIFRyYW5zZm9ybU9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSB0cmFuc2Zvcm1P
cCA9IGlzTWF0cml4QW5pbWF0aW9uID8gVHJhbnNmb3JtT3BlcmF0aW9uOjpNQVRSSVhfM0QgOiBv
cGVyYXRpb25zLT5vcGVyYXRpb25zKCkuYXQoYW5pbWF0aW9uSW5kZXgpLT50eXBlKCk7CiAgICAg
Ym9vbCBhZGRpdGl2ZSA9IGFuaW1hdGlvbkluZGV4ID4gMDsKQEAgLTI0NDMsNyArMjQ0Myw3IEBA
IGJvb2wgR3JhcGhpY3NMYXllckNBOjpnZXRUcmFuc2Zvcm1Gcm9tQW5pbWF0aW9uc1dpdGhNYXhT
Y2FsZUltcGFjdChjb25zdCBUcmFuc2ZvCiAgICAgcmV0dXJuIGhhdmVUcmFuc2Zvcm1BbmltYXRp
b247CiB9CiAKLWJvb2wgR3JhcGhpY3NMYXllckNBOjpjcmVhdGVUcmFuc2Zvcm1BbmltYXRpb25z
RnJvbUtleWZyYW1lcyhjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYgdmFsdWVMaXN0LCBjb25zdCBB
bmltYXRpb24qIGFuaW1hdGlvbiwgY29uc3QgU3RyaW5nJiBhbmltYXRpb25OYW1lLCBkb3VibGUg
dGltZU9mZnNldCwgY29uc3QgSW50U2l6ZSYgYm94U2l6ZSkKK2Jvb2wgR3JhcGhpY3NMYXllckNB
OjpjcmVhdGVUcmFuc2Zvcm1BbmltYXRpb25zRnJvbUtleWZyYW1lcyhjb25zdCBLZXlmcmFtZVZh
bHVlTGlzdCYgdmFsdWVMaXN0LCBjb25zdCBBbmltYXRpb24qIGFuaW1hdGlvbiwgY29uc3QgU3Ry
aW5nJiBhbmltYXRpb25OYW1lLCBkb3VibGUgdGltZU9mZnNldCwgY29uc3QgRmxvYXRTaXplJiBi
b3hTaXplKQogewogICAgIEFTU0VSVCh2YWx1ZUxpc3QucHJvcGVydHkoKSA9PSBBbmltYXRlZFBy
b3BlcnR5V2Via2l0VHJhbnNmb3JtKTsKIApAQCAtMjY3OSw3ICsyNjc5LDcgQEAgYm9vbCBHcmFw
aGljc0xheWVyQ0E6OnNldEFuaW1hdGlvbktleWZyYW1lcyhjb25zdCBLZXlmcmFtZVZhbHVlTGlz
dCYgdmFsdWVMaXN0LAogICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIEdyYXBoaWNzTGF5ZXJD
QTo6c2V0VHJhbnNmb3JtQW5pbWF0aW9uRW5kcG9pbnRzKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0
JiB2YWx1ZUxpc3QsIGNvbnN0IEFuaW1hdGlvbiogYW5pbWF0aW9uLCBQbGF0Zm9ybUNBQW5pbWF0
aW9uKiBiYXNpY0FuaW0sIGludCBmdW5jdGlvbkluZGV4LCBUcmFuc2Zvcm1PcGVyYXRpb246Ok9w
ZXJhdGlvblR5cGUgdHJhbnNmb3JtT3BUeXBlLCBib29sIGlzTWF0cml4QW5pbWF0aW9uLCBjb25z
dCBJbnRTaXplJiBib3hTaXplLCBWZWN0b3I8VHJhbnNmb3JtYXRpb25NYXRyaXg+JiBtYXRyaXhl
cykKK2Jvb2wgR3JhcGhpY3NMYXllckNBOjpzZXRUcmFuc2Zvcm1BbmltYXRpb25FbmRwb2ludHMo
Y29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIHZhbHVlTGlzdCwgY29uc3QgQW5pbWF0aW9uKiBhbmlt
YXRpb24sIFBsYXRmb3JtQ0FBbmltYXRpb24qIGJhc2ljQW5pbSwgaW50IGZ1bmN0aW9uSW5kZXgs
IFRyYW5zZm9ybU9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSB0cmFuc2Zvcm1PcFR5cGUsIGJvb2wg
aXNNYXRyaXhBbmltYXRpb24sIGNvbnN0IEZsb2F0U2l6ZSYgYm94U2l6ZSwgVmVjdG9yPFRyYW5z
Zm9ybWF0aW9uTWF0cml4PiYgbWF0cml4ZXMpCiB7CiAgICAgQVNTRVJUKHZhbHVlTGlzdC5zaXpl
KCkgPT0gMik7CiAKQEAgLTI3NDUsNyArMjc0NSw3IEBAIGJvb2wgR3JhcGhpY3NMYXllckNBOjpz
ZXRUcmFuc2Zvcm1BbmltYXRpb25FbmRwb2ludHMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIHZh
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgR3JhcGhpY3NMYXllckNBOjpzZXRUcmFuc2Zv
cm1BbmltYXRpb25LZXlmcmFtZXMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIHZhbHVlTGlzdCwg
Y29uc3QgQW5pbWF0aW9uKiBhbmltYXRpb24sIFBsYXRmb3JtQ0FBbmltYXRpb24qIGtleWZyYW1l
QW5pbSwgaW50IGZ1bmN0aW9uSW5kZXgsIFRyYW5zZm9ybU9wZXJhdGlvbjo6T3BlcmF0aW9uVHlw
ZSB0cmFuc2Zvcm1PcFR5cGUsIGJvb2wgaXNNYXRyaXhBbmltYXRpb24sIGNvbnN0IEludFNpemUm
IGJveFNpemUsIFZlY3RvcjxUcmFuc2Zvcm1hdGlvbk1hdHJpeD4mIG1hdHJpeGVzKQorYm9vbCBH
cmFwaGljc0xheWVyQ0E6OnNldFRyYW5zZm9ybUFuaW1hdGlvbktleWZyYW1lcyhjb25zdCBLZXlm
cmFtZVZhbHVlTGlzdCYgdmFsdWVMaXN0LCBjb25zdCBBbmltYXRpb24qIGFuaW1hdGlvbiwgUGxh
dGZvcm1DQUFuaW1hdGlvbioga2V5ZnJhbWVBbmltLCBpbnQgZnVuY3Rpb25JbmRleCwgVHJhbnNm
b3JtT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHRyYW5zZm9ybU9wVHlwZSwgYm9vbCBpc01hdHJp
eEFuaW1hdGlvbiwgY29uc3QgRmxvYXRTaXplJiBib3hTaXplLCBWZWN0b3I8VHJhbnNmb3JtYXRp
b25NYXRyaXg+JiBtYXRyaXhlcykKIHsKICAgICBWZWN0b3I8ZmxvYXQ+IGtleVRpbWVzOwogICAg
IFZlY3RvcjxmbG9hdD4gZmxvYXRWYWx1ZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYS9HcmFwaGljc0xheWVyQ0EuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NhL0dyYXBoaWNzTGF5ZXJDQS5oCmluZGV4IDE5Y2QzNGNhNmI4ZGFl
OGMxYzk0NzVlNTIyOWEyOTQzNjc2YjRlZTUuLjkxOWJkNDNjYWIyZGMyZDIwYjU2NjY1ZWQwMTIz
Yjk1NWM1ZTEyNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NhL0dyYXBoaWNzTGF5ZXJDQS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhL0dyYXBoaWNzTGF5ZXJDQS5oCkBAIC0xMTcsNyArMTE3LDcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgdm9pZCBzdXNwZW5kQW5pbWF0aW9ucyhkb3VibGUgdGltZSk7CiAgICAgdmlydHVh
bCB2b2lkIHJlc3VtZUFuaW1hdGlvbnMoKTsKIAotICAgIHZpcnR1YWwgYm9vbCBhZGRBbmltYXRp
b24oY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBJbnRTaXplJiBib3hTaXplLCBjb25z
dCBBbmltYXRpb24qLCBjb25zdCBTdHJpbmcmIGFuaW1hdGlvbk5hbWUsIGRvdWJsZSB0aW1lT2Zm
c2V0KTsKKyAgICB2aXJ0dWFsIGJvb2wgYWRkQW5pbWF0aW9uKGNvbnN0IEtleWZyYW1lVmFsdWVM
aXN0JiwgY29uc3QgRmxvYXRTaXplJiBib3hTaXplLCBjb25zdCBBbmltYXRpb24qLCBjb25zdCBT
dHJpbmcmIGFuaW1hdGlvbk5hbWUsIGRvdWJsZSB0aW1lT2Zmc2V0KTsKICAgICB2aXJ0dWFsIHZv
aWQgcGF1c2VBbmltYXRpb24oY29uc3QgU3RyaW5nJiBhbmltYXRpb25OYW1lLCBkb3VibGUgdGlt
ZU9mZnNldCk7CiAgICAgdmlydHVhbCB2b2lkIHJlbW92ZUFuaW1hdGlvbihjb25zdCBTdHJpbmcm
IGFuaW1hdGlvbk5hbWUpOwogCkBAIC0yMjUsNyArMjI1LDcgQEAgcHJpdmF0ZToKICAgICBMYXll
ck1hcCogYW5pbWF0ZWRMYXllckNsb25lcyhBbmltYXRlZFByb3BlcnR5SUQpIGNvbnN0OwogCiAg
ICAgYm9vbCBjcmVhdGVBbmltYXRpb25Gcm9tS2V5ZnJhbWVzKGNvbnN0IEtleWZyYW1lVmFsdWVM
aXN0JiwgY29uc3QgQW5pbWF0aW9uKiwgY29uc3QgU3RyaW5nJiBhbmltYXRpb25OYW1lLCBkb3Vi
bGUgdGltZU9mZnNldCk7Ci0gICAgYm9vbCBjcmVhdGVUcmFuc2Zvcm1BbmltYXRpb25zRnJvbUtl
eWZyYW1lcyhjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYsIGNvbnN0IEFuaW1hdGlvbiosIGNvbnN0
IFN0cmluZyYgYW5pbWF0aW9uTmFtZSwgZG91YmxlIHRpbWVPZmZzZXQsIGNvbnN0IEludFNpemUm
IGJveFNpemUpOworICAgIGJvb2wgY3JlYXRlVHJhbnNmb3JtQW5pbWF0aW9uc0Zyb21LZXlmcmFt
ZXMoY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBBbmltYXRpb24qLCBjb25zdCBTdHJp
bmcmIGFuaW1hdGlvbk5hbWUsIGRvdWJsZSB0aW1lT2Zmc2V0LCBjb25zdCBGbG9hdFNpemUmIGJv
eFNpemUpOwogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICBib29sIGNyZWF0ZUZpbHRlckFu
aW1hdGlvbnNGcm9tS2V5ZnJhbWVzKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgQW5p
bWF0aW9uKiwgY29uc3QgU3RyaW5nJiBhbmltYXRpb25OYW1lLCBkb3VibGUgdGltZU9mZnNldCk7
CiAjZW5kaWYKQEAgLTI0MCw4ICsyNDAsOCBAQCBwcml2YXRlOgogICAgIGJvb2wgc2V0QW5pbWF0
aW9uRW5kcG9pbnRzKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgQW5pbWF0aW9uKiwg
UGxhdGZvcm1DQUFuaW1hdGlvbiopOwogICAgIGJvb2wgc2V0QW5pbWF0aW9uS2V5ZnJhbWVzKGNv
bnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgQW5pbWF0aW9uKiwgUGxhdGZvcm1DQUFuaW1h
dGlvbiopOwogCi0gICAgYm9vbCBzZXRUcmFuc2Zvcm1BbmltYXRpb25FbmRwb2ludHMoY29uc3Qg
S2V5ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBBbmltYXRpb24qLCBQbGF0Zm9ybUNBQW5pbWF0aW9u
KiwgaW50IGZ1bmN0aW9uSW5kZXgsIFRyYW5zZm9ybU9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSwg
Ym9vbCBpc01hdHJpeEFuaW1hdGlvbiwgY29uc3QgSW50U2l6ZSYgYm94U2l6ZSwgVmVjdG9yPFRy
YW5zZm9ybWF0aW9uTWF0cml4PiYgbWF0cml4ZXMpOwotICAgIGJvb2wgc2V0VHJhbnNmb3JtQW5p
bWF0aW9uS2V5ZnJhbWVzKGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgQW5pbWF0aW9u
KiwgUGxhdGZvcm1DQUFuaW1hdGlvbiosIGludCBmdW5jdGlvbkluZGV4LCBUcmFuc2Zvcm1PcGVy
YXRpb246Ok9wZXJhdGlvblR5cGUsIGJvb2wgaXNNYXRyaXhBbmltYXRpb24sIGNvbnN0IEludFNp
emUmIGJveFNpemUsIFZlY3RvcjxUcmFuc2Zvcm1hdGlvbk1hdHJpeD4mIG1hdHJpeGVzKTsKKyAg
ICBib29sIHNldFRyYW5zZm9ybUFuaW1hdGlvbkVuZHBvaW50cyhjb25zdCBLZXlmcmFtZVZhbHVl
TGlzdCYsIGNvbnN0IEFuaW1hdGlvbiosIFBsYXRmb3JtQ0FBbmltYXRpb24qLCBpbnQgZnVuY3Rp
b25JbmRleCwgVHJhbnNmb3JtT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlLCBib29sIGlzTWF0cml4
QW5pbWF0aW9uLCBjb25zdCBGbG9hdFNpemUmIGJveFNpemUsIFZlY3RvcjxUcmFuc2Zvcm1hdGlv
bk1hdHJpeD4mIG1hdHJpeGVzKTsKKyAgICBib29sIHNldFRyYW5zZm9ybUFuaW1hdGlvbktleWZy
YW1lcyhjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYsIGNvbnN0IEFuaW1hdGlvbiosIFBsYXRmb3Jt
Q0FBbmltYXRpb24qLCBpbnQgZnVuY3Rpb25JbmRleCwgVHJhbnNmb3JtT3BlcmF0aW9uOjpPcGVy
YXRpb25UeXBlLCBib29sIGlzTWF0cml4QW5pbWF0aW9uLCBjb25zdCBGbG9hdFNpemUmIGJveFNp
emUsIFZlY3RvcjxUcmFuc2Zvcm1hdGlvbk1hdHJpeD4mIG1hdHJpeGVzKTsKICAgICAKICNpZiBF
TkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgYm9vbCBzZXRGaWx0ZXJBbmltYXRpb25FbmRwb2ludHMo
Y29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBBbmltYXRpb24qLCBQbGF0Zm9ybUNBQW5p
bWF0aW9uKiwgaW50IGZ1bmN0aW9uSW5kZXgsIGludCBpbnRlcm5hbEZpbHRlclByb3BlcnR5SW5k
ZXgpOwpAQCAtNDA2LDcgKzQwNiw3IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIHZvaWQgbW92ZU9y
Q29weUxheWVyQW5pbWF0aW9uKE1vdmVPckNvcHksIGNvbnN0IFN0cmluZyYgYW5pbWF0aW9uSWRl
bnRpZmllciwgUGxhdGZvcm1DQUxheWVyICpmcm9tTGF5ZXIsIFBsYXRmb3JtQ0FMYXllciAqdG9M
YXllcik7CiAgICAgdm9pZCBtb3ZlT3JDb3B5QW5pbWF0aW9ucyhNb3ZlT3JDb3B5LCBQbGF0Zm9y
bUNBTGF5ZXIgKiBmcm9tTGF5ZXIsIFBsYXRmb3JtQ0FMYXllciAqIHRvTGF5ZXIpOwogICAgIAot
ICAgIGJvb2wgYXBwZW5kVG9VbmNvbW1pdHRlZEFuaW1hdGlvbnMoY29uc3QgS2V5ZnJhbWVWYWx1
ZUxpc3QmLCBjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb25zKiwgY29uc3QgQW5pbWF0aW9uKiwgY29u
c3QgU3RyaW5nJiBhbmltYXRpb25OYW1lLCBjb25zdCBJbnRTaXplJiBib3hTaXplLCBpbnQgYW5p
bWF0aW9uSW5kZXgsIGRvdWJsZSB0aW1lT2Zmc2V0LCBib29sIGlzTWF0cml4QW5pbWF0aW9uKTsK
KyAgICBib29sIGFwcGVuZFRvVW5jb21taXR0ZWRBbmltYXRpb25zKGNvbnN0IEtleWZyYW1lVmFs
dWVMaXN0JiwgY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9ucyosIGNvbnN0IEFuaW1hdGlvbiosIGNv
bnN0IFN0cmluZyYgYW5pbWF0aW9uTmFtZSwgY29uc3QgRmxvYXRTaXplJiBib3hTaXplLCBpbnQg
YW5pbWF0aW9uSW5kZXgsIGRvdWJsZSB0aW1lT2Zmc2V0LCBib29sIGlzTWF0cml4QW5pbWF0aW9u
KTsKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgYm9vbCBhcHBlbmRUb1VuY29tbWl0dGVk
QW5pbWF0aW9ucyhjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYsIGNvbnN0IEZpbHRlck9wZXJhdGlv
biosIGNvbnN0IEFuaW1hdGlvbiosIGNvbnN0IFN0cmluZyYgYW5pbWF0aW9uTmFtZSwgaW50IGFu
aW1hdGlvbkluZGV4LCBkb3VibGUgdGltZU9mZnNldCk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGlu
YXRlZEdyYXBoaWNzTGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5jcHAKaW5kZXggNTUw
ZGVlYTJjNmI3N2ZiYzM0MmE1ZDdiNTJiMDhmNmFjY2FiNWNmMS4uMWVjYTczMjk3YjFjNzU4ZTVk
YmJlNzgyNjRkNTFhODZmM2RjYWE5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5h
dGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5jcHAKQEAgLTExODAsNyArMTE4MCw3IEBAIGJv
b2wgQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyOjpzZWxmT3JBbmNlc3RvckhhdmVOb25BZmZpbmVU
cmFuc2Zvcm1zKCkKICAgICByZXR1cm4gdG9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIocGFyZW50
KCkpLT5zZWxmT3JBbmNlc3RvckhhdmVOb25BZmZpbmVUcmFuc2Zvcm1zKCk7CiB9CiAKLWJvb2wg
Q29vcmRpbmF0ZWRHcmFwaGljc0xheWVyOjphZGRBbmltYXRpb24oY29uc3QgS2V5ZnJhbWVWYWx1
ZUxpc3QmIHZhbHVlTGlzdCwgY29uc3QgSW50U2l6ZSYgYm94U2l6ZSwgY29uc3QgQW5pbWF0aW9u
KiBhbmltLCBjb25zdCBTdHJpbmcmIGtleWZyYW1lc05hbWUsIGRvdWJsZSBkZWxheUFzTmVnYXRp
dmVUaW1lT2Zmc2V0KQorYm9vbCBDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXI6OmFkZEFuaW1hdGlv
bihjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYgdmFsdWVMaXN0LCBjb25zdCBGbG9hdFNpemUmIGJv
eFNpemUsIGNvbnN0IEFuaW1hdGlvbiogYW5pbSwgY29uc3QgU3RyaW5nJiBrZXlmcmFtZXNOYW1l
LCBkb3VibGUgZGVsYXlBc05lZ2F0aXZlVGltZU9mZnNldCkKIHsKICAgICBBU1NFUlQoIWtleWZy
YW1lc05hbWUuaXNFbXB0eSgpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nv
b3JkaW5hdGVkR3JhcGhpY3NMYXllci5oCmluZGV4IDczNGIyNzM4YWJhMDQ3YjVjYmI5NmI0YmRi
MTU2ZGRjNTdiMjc5YzEuLmI5OWFmNDk2M2VlZDJkNjFlNGJmOWY3ZTQxOWM3MDQzMjk0M2E2ZjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29y
ZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc0xh
eWVyLmgKQEAgLTEwNCw3ICsxMDQsNyBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKENTU19GSUxURVJT
KQogICAgIHZpcnR1YWwgYm9vbCBzZXRGaWx0ZXJzKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmKSBv
dmVycmlkZTsKICNlbmRpZgotICAgIHZpcnR1YWwgYm9vbCBhZGRBbmltYXRpb24oY29uc3QgS2V5
ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBJbnRTaXplJiwgY29uc3QgQW5pbWF0aW9uKiwgY29uc3Qg
U3RyaW5nJiwgZG91YmxlKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIGJvb2wgYWRkQW5pbWF0aW9u
KGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0JiwgY29uc3QgRmxvYXRTaXplJiwgY29uc3QgQW5pbWF0
aW9uKiwgY29uc3QgU3RyaW5nJiwgZG91YmxlKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQg
cGF1c2VBbmltYXRpb24oY29uc3QgU3RyaW5nJiwgZG91YmxlKSBvdmVycmlkZTsKICAgICB2aXJ0
dWFsIHZvaWQgcmVtb3ZlQW5pbWF0aW9uKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwogICAgIHZp
cnR1YWwgdm9pZCBzdXNwZW5kQW5pbWF0aW9ucyhkb3VibGUgdGltZSkgb3ZlcnJpZGU7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCmluZGV4IGZm
MTMyNzllN2VjYjE1MDFjYTAxYzc4NmNlZTFkNjE0NTg0NzRmMmYuLmQ0N2Y5OGNhZmE1NDEzMjE0
N2ZkNWM3MTg5MGY5ZmFmNDNmZTE5YTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCkBAIC0yNDAwLDcgKzI0MDAsNyBAQCBib29sIFJlbmRl
ckxheWVyQmFja2luZzo6c3RhcnRUcmFuc2l0aW9uKGRvdWJsZSB0aW1lT2Zmc2V0LCBDU1NQcm9w
ZXJ0eUlEIHByb3BlcgogICAgICAgICAgICAgb3BhY2l0eVZlY3Rvci5pbnNlcnQoRmxvYXRBbmlt
YXRpb25WYWx1ZTo6Y3JlYXRlKDAsIGNvbXBvc2l0aW5nT3BhY2l0eShmcm9tU3R5bGUtPm9wYWNp
dHkoKSkpKTsKICAgICAgICAgICAgIG9wYWNpdHlWZWN0b3IuaW5zZXJ0KEZsb2F0QW5pbWF0aW9u
VmFsdWU6OmNyZWF0ZSgxLCBjb21wb3NpdGluZ09wYWNpdHkodG9TdHlsZS0+b3BhY2l0eSgpKSkp
OwogICAgICAgICAgICAgLy8gVGhlIGJveFNpemUgcGFyYW0gaXMgb25seSB1c2VkIGZvciB0cmFu
c2Zvcm0gYW5pbWF0aW9ucyAod2hpY2ggY2FuIG9ubHkgcnVuIG9uIFJlbmRlckJveGVzKSwgc28g
d2UgcGFzcyBhbiBlbXB0eSBzaXplIGhlcmUuCi0gICAgICAgICAgICBpZiAobV9ncmFwaGljc0xh
eWVyLT5hZGRBbmltYXRpb24ob3BhY2l0eVZlY3RvciwgSW50U2l6ZSgpLCBvcGFjaXR5QW5pbSwg
R3JhcGhpY3NMYXllcjo6YW5pbWF0aW9uTmFtZUZvclRyYW5zaXRpb24oQW5pbWF0ZWRQcm9wZXJ0
eU9wYWNpdHkpLCB0aW1lT2Zmc2V0KSkgeworICAgICAgICAgICAgaWYgKG1fZ3JhcGhpY3NMYXll
ci0+YWRkQW5pbWF0aW9uKG9wYWNpdHlWZWN0b3IsIEZsb2F0U2l6ZSgpLCBvcGFjaXR5QW5pbSwg
R3JhcGhpY3NMYXllcjo6YW5pbWF0aW9uTmFtZUZvclRyYW5zaXRpb24oQW5pbWF0ZWRQcm9wZXJ0
eU9wYWNpdHkpLCB0aW1lT2Zmc2V0KSkgewogICAgICAgICAgICAgICAgIC8vIFRvIGVuc3VyZSB0
aGF0IHRoZSBjb3JyZWN0IG9wYWNpdHkgaXMgdmlzaWJsZSB3aGVuIHRoZSBhbmltYXRpb24gZW5k
cywgYWxzbyBzZXQgdGhlIGZpbmFsIG9wYWNpdHkuCiAgICAgICAgICAgICAgICAgdXBkYXRlT3Bh
Y2l0eSh0b1N0eWxlKTsKICAgICAgICAgICAgICAgICBkaWRBbmltYXRlID0gdHJ1ZTsKQEAgLTI0
MjksNyArMjQyOSw3IEBAIGJvb2wgUmVuZGVyTGF5ZXJCYWNraW5nOjpzdGFydFRyYW5zaXRpb24o
ZG91YmxlIHRpbWVPZmZzZXQsIENTU1Byb3BlcnR5SUQgcHJvcGVyCiAgICAgICAgICAgICBLZXlm
cmFtZVZhbHVlTGlzdCBmaWx0ZXJWZWN0b3IoQW5pbWF0ZWRQcm9wZXJ0eVdlYmtpdEZpbHRlcik7
CiAgICAgICAgICAgICBmaWx0ZXJWZWN0b3IuaW5zZXJ0KEZpbHRlckFuaW1hdGlvblZhbHVlOjpj
cmVhdGUoMCwgZnJvbVN0eWxlLT5maWx0ZXIoKSkpOwogICAgICAgICAgICAgZmlsdGVyVmVjdG9y
Lmluc2VydChGaWx0ZXJBbmltYXRpb25WYWx1ZTo6Y3JlYXRlKDEsIHRvU3R5bGUtPmZpbHRlcigp
KSk7Ci0gICAgICAgICAgICBpZiAobV9ncmFwaGljc0xheWVyLT5hZGRBbmltYXRpb24oZmlsdGVy
VmVjdG9yLCBJbnRTaXplKCksIGZpbHRlckFuaW0sIEdyYXBoaWNzTGF5ZXI6OmFuaW1hdGlvbk5h
bWVGb3JUcmFuc2l0aW9uKEFuaW1hdGVkUHJvcGVydHlXZWJraXRGaWx0ZXIpLCB0aW1lT2Zmc2V0
KSkgeworICAgICAgICAgICAgaWYgKG1fZ3JhcGhpY3NMYXllci0+YWRkQW5pbWF0aW9uKGZpbHRl
clZlY3RvciwgRmxvYXRTaXplKCksIGZpbHRlckFuaW0sIEdyYXBoaWNzTGF5ZXI6OmFuaW1hdGlv
bk5hbWVGb3JUcmFuc2l0aW9uKEFuaW1hdGVkUHJvcGVydHlXZWJraXRGaWx0ZXIpLCB0aW1lT2Zm
c2V0KSkgewogICAgICAgICAgICAgICAgIC8vIFRvIGVuc3VyZSB0aGF0IHRoZSBjb3JyZWN0IGZp
bHRlciBpcyB2aXNpYmxlIHdoZW4gdGhlIGFuaW1hdGlvbiBlbmRzLCBhbHNvIHNldCB0aGUgZmlu
YWwgZmlsdGVyLgogICAgICAgICAgICAgICAgIHVwZGF0ZUZpbHRlcnModG9TdHlsZSk7CiAgICAg
ICAgICAgICAgICAgZGlkQW5pbWF0ZSA9IHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL0dyYXBoaWNzTGF5ZXJDQVJlbW90ZS5oIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9HcmFwaGljc0xheWVyQ0FSZW1vdGUuaApp
bmRleCAxZTM0MGI2ODc0OTI2MjBkODYwMDc4OGU4YWIzNWE3ZDRiNDMyZTdmLi4yZDk0MTJkMzhh
YmY2MWVjNmEyZjhjNmQ2ZjFjZmZmYjViN2QzNjMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL0dyYXBoaWNzTGF5ZXJDQVJlbW90ZS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvR3JhcGhpY3NMYXllckNBUmVtb3Rl
LmgKQEAgLTU0LDcgKzU0LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8V2Vi
Q29yZTo6UGxhdGZvcm1DQUxheWVyPiBjcmVhdGVQbGF0Zm9ybUNBTGF5ZXIoUGxhdGZvcm1MYXll
ciosIFdlYkNvcmU6OlBsYXRmb3JtQ0FMYXllckNsaWVudCogb3duZXIpIG92ZXJyaWRlOwogCiAg
ICAgLy8gTm8gYWNjZWxlcmF0ZWQgYW5pbWF0aW9ucyBmb3Igbm93LgotICAgIHZpcnR1YWwgYm9v
bCBhZGRBbmltYXRpb24oY29uc3QgV2ViQ29yZTo6S2V5ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBX
ZWJDb3JlOjpJbnRTaXplJiwgY29uc3QgV2ViQ29yZTo6QW5pbWF0aW9uKiwgY29uc3QgU3RyaW5n
JiwgZG91YmxlKSBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsgfQorICAgIHZpcnR1YWwgYm9vbCBh
ZGRBbmltYXRpb24oY29uc3QgV2ViQ29yZTo6S2V5ZnJhbWVWYWx1ZUxpc3QmLCBjb25zdCBXZWJD
b3JlOjpGbG9hdFNpemUmLCBjb25zdCBXZWJDb3JlOjpBbmltYXRpb24qLCBjb25zdCBTdHJpbmcm
LCBkb3VibGUpIG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICAvLyBQbGF0Zm9ybUNB
TGF5ZXJSZW1vdGUgY2FuJ3QgY3VycmVudGx5IHByb3h5IGRpcmVjdGx5IGNvbXBvc2l0ZWQgaW1h
Z2UgY29udGVudHMsIHNvIG9wdCBvdXQgb2YgdGhpcyBvcHRpbWl6YXRpb24uCiAgICAgdmlydHVh
bCBib29sIHNob3VsZERpcmVjdGx5Q29tcG9zaXRlSW1hZ2UoV2ViQ29yZTo6SW1hZ2UqKSBjb25z
dCBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>