<?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>141129</bug_id>
          
          <creation_ts>2015-01-31 16:44:13 -0800</creation_ts>
          <short_desc>Shrink RenderBlock.</short_desc>
          <delta_ts>2015-02-01 16:15:11 -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>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>Performance</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>WebkitBugTracker</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1065886</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-01-31 16:44:13 -0800</bug_when>
    <thetext>Looks like we can lose the line-height cache in RenderBlock without affecting any benchmarks, then the remaining bits fit into RenderElement&apos;s bitfield.
Savings potential: 8 bytes per RenderBlock (including subclasses)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1065887</commentid>
    <comment_count>1</comment_count>
      <attachid>245805</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-01-31 16:45:05 -0800</bug_when>
    <thetext>Created attachment 245805
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1065908</commentid>
    <comment_count>2</comment_count>
      <attachid>245805</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-31 18:58:10 -0800</bug_when>
    <thetext>Comment on attachment 245805
Patch

Clearing flags on attachment: 245805

Committed r179454: &lt;http://trac.webkit.org/changeset/179454&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1065909</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-31 18:58:13 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1066012</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-02-01 16:15:11 -0800</bug_when>
    <thetext>*** Bug 141128 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>245805</attachid>
            <date>2015-01-31 16:45:05 -0800</date>
            <delta_ts>2015-01-31 18:58:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141129.diff</filename>
            <type>text/plain</type>
            <size>16092</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2ZjAyZDU1Li42ODYzZjFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTgg
QEAKKzIwMTUtMDEtMzEgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAg
ICAgIFNocmluayBSZW5kZXJCbG9jay4KKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE0
MTEyOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBH
ZXQgcmlkIG9mIHRoZSBiaXRmaWVsZCBpbiBSZW5kZXJCbG9jayBieSBtb3ZpbmcgdGhlIGVzc2Vu
dGlhbCBiaXRzIHRvCisgICAgICAgIFJlbmRlckVsZW1lbnQgKHBsZW50eSBvZiBzcGFjZSBpbiB0
aGUgYml0ZmllbGQgdGhlcmUuKQorCisgICAgICAgIFJlbmRlckJsb2NrIGFsc28gaGFkIGEgY2Fj
aGUgb2YgaXRzIGxpbmUtaGVpZ2h0LCBidXQgaXQgZG9lc24ndCBhcHBlYXIKKyAgICAgICAgdG8g
aGVscCBhbnkgb2YgdGhlIGJlbmNobWFya3MgdGhhdCB3ZSdyZSB0cmFja2luZyBzbyBJJ2Qgc2F5
IGl0J3Mgb2theQorICAgICAgICB0byBsb3NlIHRoaXMgb3B0aW1pemF0aW9uLgorCisgICAgICAg
IFRoaXMga25vY2tzIDggYnl0ZXMgb2ZmIG9mIFJlbmRlckJsb2NrIChhbmQgYWxsIG9mIGl0cyBz
dWJjbGFzc2VzLikKKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCbG9jay5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6UmVuZGVyQmxvY2spOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyQmxvY2s6OnN0eWxlRGlkQ2hhbmdlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJsb2NrOjpyZWNvbXB1dGVMb2dpY2FsV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
QmxvY2s6OmxpbmVIZWlnaHQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCbG9jay5oOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OnNldEhhc01hcmdpbkJlZm9yZVF1aXJrKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpzZXRIYXNNYXJnaW5BZnRlclF1aXJrKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpzZXRIYXNCb3JkZXJPclBhZGRpbmdMb2dp
Y2FsV2lkdGhDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpoYXNNYXJn
aW5CZWZvcmVRdWlyayk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6aGFzTWFyZ2lu
QWZ0ZXJRdWlyayk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6aGFzQm9yZGVyT3JQ
YWRkaW5nTG9naWNhbFdpZHRoQ2hhbmdlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJs
b2NrRmxvdy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9ja0Zsb3c6OmxheW91dElu
bGluZUNoaWxkcmVuKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6aW52YWxp
ZGF0ZUxpbmVMYXlvdXRQYXRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6
ZGVsZXRlTGluZUJveGVzQmVmb3JlU2ltcGxlTGluZUxheW91dCk6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJCbG9ja0Zsb3c6OmVuc3VyZUxpbmVCb3hlcyk6CisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlckJsb2NrRmxvdy5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tGbG93Ojps
aW5lTGF5b3V0UGF0aCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9ja0Zsb3c6OnNldExp
bmVMYXlvdXRQYXRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6c2V0SGFz
TWFya3VwVHJ1bmNhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9ja0Zsb3c6Omhh
c01hcmt1cFRydW5jYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tGbG93Ojpz
aW1wbGVMaW5lTGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpSZW5kZXJFbGVtZW50KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
RWxlbWVudDo6c2V0UmVuZGVyQmxvY2tIYXNNYXJnaW5CZWZvcmVRdWlyayk6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpzZXRSZW5kZXJCbG9ja0hhc01hcmdpbkFmdGVyUXVpcmsp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRWxlbWVudDo6c2V0UmVuZGVyQmxvY2tIYXNCb3Jk
ZXJPclBhZGRpbmdMb2dpY2FsV2lkdGhDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckVsZW1lbnQ6OnJlbmRlckJsb2NrSGFzTWFyZ2luQmVmb3JlUXVpcmspOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyRWxlbWVudDo6cmVuZGVyQmxvY2tIYXNNYXJnaW5BZnRlclF1aXJrKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnJlbmRlckJsb2NrSGFzQm9yZGVyT3JQYWRk
aW5nTG9naWNhbFdpZHRoQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50
OjpzZXRSZW5kZXJCbG9ja0Zsb3dMaW5lTGF5b3V0UGF0aCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJFbGVtZW50OjpzZXRSZW5kZXJCbG9ja0Zsb3dIYXNNYXJrdXBUcnVuY2F0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnJlbmRlckJsb2NrRmxvd0xpbmVMYXlvdXRQ
YXRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnJlbmRlckJsb2NrRmxvd0hh
c01hcmt1cFRydW5jYXRpb24pOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJGbG93VGhyZWFk
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsb3dUaHJlYWQ6OnJlbW92ZUxpbmVSZWdp
b25JbmZvKToKKwogMjAxNS0wMS0zMCAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgog
CiAgICAgICAgIFNpbXBsZSBsaW5lIGxheW91dDogSW1wcm92ZSBGbG93Q29udGVudHNJdGVyYXRv
cjo6VGV4dEZyYWdtZW50J3MgZW5jYXBzdWxhdGlvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQmxvY2suY3BwCmluZGV4IGYxYzQzMDQuLmY4ZDcyN2YgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcApAQCAtODYsNyArODYsNiBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogCiBzdHJ1Y3QgU2FtZVNpemVBc1Jl
bmRlckJsb2NrIDogcHVibGljIFJlbmRlckJveCB7Ci0gICAgdWludDMyX3QgYml0ZmllbGRzOwog
fTsKIAogQ09NUElMRV9BU1NFUlQoc2l6ZW9mKFJlbmRlckJsb2NrKSA9PSBzaXplb2YoU2FtZVNp
emVBc1JlbmRlckJsb2NrKSwgUmVuZGVyQmxvY2tfc2hvdWxkX3N0YXlfc21hbGwpOwpAQCAtMTgz
LDIzICsxODIsMTEgQEAgcHJpdmF0ZToKIAogUmVuZGVyQmxvY2s6OlJlbmRlckJsb2NrKEVsZW1l
bnQmIGVsZW1lbnQsIFJlZjxSZW5kZXJTdHlsZT4mJiBzdHlsZSwgdW5zaWduZWQgYmFzZVR5cGVG
bGFncykKICAgICA6IFJlbmRlckJveChlbGVtZW50LCBXVEY6Om1vdmUoc3R5bGUpLCBiYXNlVHlw
ZUZsYWdzIHwgUmVuZGVyQmxvY2tGbGFnKQotICAgICwgbV9saW5lSGVpZ2h0KC0xKQotICAgICwg
bV9oYXNNYXJnaW5CZWZvcmVRdWlyayhmYWxzZSkKLSAgICAsIG1faGFzTWFyZ2luQWZ0ZXJRdWly
ayhmYWxzZSkKLSAgICAsIG1faGFzTWFya3VwVHJ1bmNhdGlvbihmYWxzZSkKLSAgICAsIG1faGFz
Qm9yZGVyT3JQYWRkaW5nTG9naWNhbFdpZHRoQ2hhbmdlZChmYWxzZSkKLSAgICAsIG1fbGluZUxh
eW91dFBhdGgoVW5kZXRlcm1pbmVkUGF0aCkKIHsKIH0KIAogUmVuZGVyQmxvY2s6OlJlbmRlckJs
b2NrKERvY3VtZW50JiBkb2N1bWVudCwgUmVmPFJlbmRlclN0eWxlPiYmIHN0eWxlLCB1bnNpZ25l
ZCBiYXNlVHlwZUZsYWdzKQogICAgIDogUmVuZGVyQm94KGRvY3VtZW50LCBXVEY6Om1vdmUoc3R5
bGUpLCBiYXNlVHlwZUZsYWdzIHwgUmVuZGVyQmxvY2tGbGFnKQotICAgICwgbV9saW5lSGVpZ2h0
KC0xKQotICAgICwgbV9oYXNNYXJnaW5CZWZvcmVRdWlyayhmYWxzZSkKLSAgICAsIG1faGFzTWFy
Z2luQWZ0ZXJRdWlyayhmYWxzZSkKLSAgICAsIG1faGFzTWFya3VwVHJ1bmNhdGlvbihmYWxzZSkK
LSAgICAsIG1faGFzQm9yZGVyT3JQYWRkaW5nTG9naWNhbFdpZHRoQ2hhbmdlZChmYWxzZSkKLSAg
ICAsIG1fbGluZUxheW91dFBhdGgoVW5kZXRlcm1pbmVkUGF0aCkKIHsKIH0KIApAQCAtMzIwLDEx
ICszMDcsMTAgQEAgdm9pZCBSZW5kZXJCbG9jazo6c3R5bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJl
bmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0eWxlKiBvbGRTdHkKICAgICB9CiAKICAgICBwcm9wYWdh
dGVTdHlsZVRvQW5vbnltb3VzQ2hpbGRyZW4oUHJvcGFnYXRlVG9CbG9ja0NoaWxkcmVuT25seSk7
Ci0gICAgbV9saW5lSGVpZ2h0ID0gLTE7CiAKICAgICAvLyBJdCdzIHBvc3NpYmxlIGZvciBvdXIg
Ym9yZGVyL3BhZGRpbmcgdG8gY2hhbmdlLCBidXQgZm9yIHRoZSBvdmVyYWxsIGxvZ2ljYWwgd2lk
dGggb2YgdGhlIGJsb2NrIHRvCiAgICAgLy8gZW5kIHVwIGJlaW5nIHRoZSBzYW1lLiBXZSBrZWVw
IHRyYWNrIG9mIHRoaXMgY2hhbmdlIHNvIGluIGxheW91dEJsb2NrLCB3ZSBjYW4ga25vdyB0byBz
ZXQgcmVsYXlvdXRDaGlsZHJlbj10cnVlLgotICAgIG1faGFzQm9yZGVyT3JQYWRkaW5nTG9naWNh
bFdpZHRoQ2hhbmdlZCA9IG9sZFN0eWxlICYmIGRpZmYgPT0gU3R5bGVEaWZmZXJlbmNlTGF5b3V0
ICYmIG5lZWRzTGF5b3V0KCkgJiYgYm9yZGVyT3JQYWRkaW5nTG9naWNhbFdpZHRoQ2hhbmdlZChv
bGRTdHlsZSwgJm5ld1N0eWxlKTsKKyAgICBzZXRIYXNCb3JkZXJPclBhZGRpbmdMb2dpY2FsV2lk
dGhDaGFuZ2VkKG9sZFN0eWxlICYmIGRpZmYgPT0gU3R5bGVEaWZmZXJlbmNlTGF5b3V0ICYmIG5l
ZWRzTGF5b3V0KCkgJiYgYm9yZGVyT3JQYWRkaW5nTG9naWNhbFdpZHRoQ2hhbmdlZChvbGRTdHls
ZSwgJm5ld1N0eWxlKSk7CiB9CiAKIFJlbmRlckJsb2NrKiBSZW5kZXJCbG9jazo6Y29udGludWF0
aW9uQmVmb3JlKFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQpCkBAIC05OTAsOCArOTc2LDggQEAg
Ym9vbCBSZW5kZXJCbG9jazo6cmVjb21wdXRlTG9naWNhbFdpZHRoKCkKICAgICAKICAgICB1cGRh
dGVMb2dpY2FsV2lkdGgoKTsKICAgICAKLSAgICBib29sIGhhc0JvcmRlck9yUGFkZGluZ0xvZ2lj
YWxXaWR0aENoYW5nZWQgPSBtX2hhc0JvcmRlck9yUGFkZGluZ0xvZ2ljYWxXaWR0aENoYW5nZWQ7
Ci0gICAgbV9oYXNCb3JkZXJPclBhZGRpbmdMb2dpY2FsV2lkdGhDaGFuZ2VkID0gZmFsc2U7Cisg
ICAgYm9vbCBoYXNCb3JkZXJPclBhZGRpbmdMb2dpY2FsV2lkdGhDaGFuZ2VkID0gdGhpcy0+aGFz
Qm9yZGVyT3JQYWRkaW5nTG9naWNhbFdpZHRoQ2hhbmdlZCgpOworICAgIHNldEhhc0JvcmRlck9y
UGFkZGluZ0xvZ2ljYWxXaWR0aENoYW5nZWQoZmFsc2UpOwogCiAgICAgcmV0dXJuIG9sZFdpZHRo
ICE9IGxvZ2ljYWxXaWR0aCgpIHx8IGhhc0JvcmRlck9yUGFkZGluZ0xvZ2ljYWxXaWR0aENoYW5n
ZWQ7CiB9CkBAIC0yODQwLDEwICsyODI2LDcgQEAgTGF5b3V0VW5pdCBSZW5kZXJCbG9jazo6bGlu
ZUhlaWdodChib29sIGZpcnN0TGluZSwgTGluZURpcmVjdGlvbk1vZGUgZGlyZWN0aW9uLAogICAg
ICAgICAgICAgcmV0dXJuIHMuY29tcHV0ZWRMaW5lSGVpZ2h0KCk7CiAgICAgfQogICAgIAotICAg
IGlmIChtX2xpbmVIZWlnaHQgPT0gLTEpCi0gICAgICAgIG1fbGluZUhlaWdodCA9IHN0eWxlKCku
Y29tcHV0ZWRMaW5lSGVpZ2h0KCk7Ci0KLSAgICByZXR1cm4gbV9saW5lSGVpZ2h0OworICAgIHJl
dHVybiBzdHlsZSgpLmNvbXB1dGVkTGluZUhlaWdodCgpOwogfQogCiBpbnQgUmVuZGVyQmxvY2s6
OmJhc2VsaW5lUG9zaXRpb24oRm9udEJhc2VsaW5lIGJhc2VsaW5lVHlwZSwgYm9vbCBmaXJzdExp
bmUsIExpbmVEaXJlY3Rpb25Nb2RlIGRpcmVjdGlvbiwgTGluZVBvc2l0aW9uTW9kZSBsaW5lUG9z
aXRpb25Nb2RlKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaAppbmRl
eCBiNTg0ODRjLi44YWUxMjk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQmxvY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2su
aApAQCAtMTAwLDExICsxMDAsMTMgQEAgcHVibGljOgogICAgIHN0YXRpYyB2b2lkIGNsZWFyUGVy
Y2VudEhlaWdodERlc2NlbmRhbnRzRnJvbShSZW5kZXJCb3gmKTsKICAgICBzdGF0aWMgdm9pZCBy
ZW1vdmVQZXJjZW50SGVpZ2h0RGVzY2VuZGFudElmTmVlZGVkKFJlbmRlckJveCYpOwogCi0gICAg
dm9pZCBzZXRIYXNNYXJnaW5CZWZvcmVRdWlyayhib29sIGIpIHsgbV9oYXNNYXJnaW5CZWZvcmVR
dWlyayA9IGI7IH0KLSAgICB2b2lkIHNldEhhc01hcmdpbkFmdGVyUXVpcmsoYm9vbCBiKSB7IG1f
aGFzTWFyZ2luQWZ0ZXJRdWlyayA9IGI7IH0KKyAgICB2b2lkIHNldEhhc01hcmdpbkJlZm9yZVF1
aXJrKGJvb2wgYikgeyBzZXRSZW5kZXJCbG9ja0hhc01hcmdpbkJlZm9yZVF1aXJrKGIpOyB9Cisg
ICAgdm9pZCBzZXRIYXNNYXJnaW5BZnRlclF1aXJrKGJvb2wgYikgeyBzZXRSZW5kZXJCbG9ja0hh
c01hcmdpbkFmdGVyUXVpcmsoYik7IH0KKyAgICB2b2lkIHNldEhhc0JvcmRlck9yUGFkZGluZ0xv
Z2ljYWxXaWR0aENoYW5nZWQoYm9vbCBiKSB7IHNldFJlbmRlckJsb2NrSGFzQm9yZGVyT3JQYWRk
aW5nTG9naWNhbFdpZHRoQ2hhbmdlZChiKTsgfQogCi0gICAgYm9vbCBoYXNNYXJnaW5CZWZvcmVR
dWlyaygpIGNvbnN0IHsgcmV0dXJuIG1faGFzTWFyZ2luQmVmb3JlUXVpcms7IH0KLSAgICBib29s
IGhhc01hcmdpbkFmdGVyUXVpcmsoKSBjb25zdCB7IHJldHVybiBtX2hhc01hcmdpbkFmdGVyUXVp
cms7IH0KKyAgICBib29sIGhhc01hcmdpbkJlZm9yZVF1aXJrKCkgY29uc3QgeyByZXR1cm4gcmVu
ZGVyQmxvY2tIYXNNYXJnaW5CZWZvcmVRdWlyaygpOyB9CisgICAgYm9vbCBoYXNNYXJnaW5BZnRl
clF1aXJrKCkgY29uc3QgeyByZXR1cm4gcmVuZGVyQmxvY2tIYXNNYXJnaW5BZnRlclF1aXJrKCk7
IH0KKyAgICBib29sIGhhc0JvcmRlck9yUGFkZGluZ0xvZ2ljYWxXaWR0aENoYW5nZWQoKSBjb25z
dCB7IHJldHVybiByZW5kZXJCbG9ja0hhc0JvcmRlck9yUGFkZGluZ0xvZ2ljYWxXaWR0aENoYW5n
ZWQoKTsgfQogCiAgICAgYm9vbCBoYXNNYXJnaW5CZWZvcmVRdWlyayhjb25zdCBSZW5kZXJCb3gm
IGNoaWxkKSBjb25zdDsKICAgICBib29sIGhhc01hcmdpbkFmdGVyUXVpcmsoY29uc3QgUmVuZGVy
Qm94JiBjaGlsZCkgY29uc3Q7CkBAIC01MTEsMTQgKzUxMyw2IEBAIHB1YmxpYzoKICAgICAvLyBG
SVhNRS1CTE9DS0ZMT1c6IFJlbW92ZSB0aGlzIHdoZW4gdGhlIGxpbmUgbGF5b3V0IHN0dWZmIGhh
cyBhbGwgbW92ZWQgb3V0IG9mIFJlbmRlckJsb2NrCiAgICAgZnJpZW5kIGNsYXNzIExpbmVCcmVh
a2VyOwogCi0gICAgbXV0YWJsZSBzaWduZWQgbV9saW5lSGVpZ2h0IDogMjU7Ci0gICAgdW5zaWdu
ZWQgbV9oYXNNYXJnaW5CZWZvcmVRdWlyayA6IDE7IC8vIE5vdGUgdGhlc2UgcXVpcmsgdmFsdWVz
IGNhbid0IGJlIHB1dCBpbiBSZW5kZXJCbG9ja1JhcmVEYXRhIHNpbmNlIHRoZXkgYXJlIHNldCB0
b28gZnJlcXVlbnRseS4KLSAgICB1bnNpZ25lZCBtX2hhc01hcmdpbkFmdGVyUXVpcmsgOiAxOwot
ICAgIHVuc2lnbmVkIG1faGFzTWFya3VwVHJ1bmNhdGlvbiA6IDE7Ci0gICAgdW5zaWduZWQgbV9o
YXNCb3JkZXJPclBhZGRpbmdMb2dpY2FsV2lkdGhDaGFuZ2VkIDogMTsKLSAgICBlbnVtIExpbmVM
YXlvdXRQYXRoIHsgVW5kZXRlcm1pbmVkUGF0aCwgU2ltcGxlTGluZXNQYXRoLCBMaW5lQm94ZXNQ
YXRoLCBGb3JjZUxpbmVCb3hlc1BhdGggfTsKLSAgICB1bnNpZ25lZCBtX2xpbmVMYXlvdXRQYXRo
IDogMjsKLSAgICAKICAgICAvLyBSZW5kZXJSdWJ5QmFzZSBvYmplY3RzIG5lZWQgdG8gYmUgYWJs
ZSB0byBzcGxpdCBhbmQgbWVyZ2UsIG1vdmluZyB0aGVpciBjaGlsZHJlbiBhcm91bmQKICAgICAv
LyAoY2FsbGluZyBtb3ZlQ2hpbGRUbywgbW92ZUFsbENoaWxkcmVuVG8sIGFuZCBtYWtlQ2hpbGRy
ZW5Ob25JbmxpbmUpLgogICAgIGZyaWVuZCBjbGFzcyBSZW5kZXJSdWJ5QmFzZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKaW5kZXggM2NiMTA4Zi4uMmUx
MzVjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxv
dy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAK
QEAgLTYzMywxMCArNjMzLDEwIEBAIHZvaWQgUmVuZGVyQmxvY2tGbG93OjpsYXlvdXRCbG9ja0No
aWxkcmVuKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgTGF5b3V0VW5pdCYgbWF4CiAKIHZvaWQgUmVu
ZGVyQmxvY2tGbG93OjpsYXlvdXRJbmxpbmVDaGlsZHJlbihib29sIHJlbGF5b3V0Q2hpbGRyZW4s
IExheW91dFVuaXQmIHJlcGFpbnRMb2dpY2FsVG9wLCBMYXlvdXRVbml0JiByZXBhaW50TG9naWNh
bEJvdHRvbSkKIHsKLSAgICBpZiAobV9saW5lTGF5b3V0UGF0aCA9PSBVbmRldGVybWluZWRQYXRo
KQotICAgICAgICBtX2xpbmVMYXlvdXRQYXRoID0gU2ltcGxlTGluZUxheW91dDo6Y2FuVXNlRm9y
KCp0aGlzKSA/IFNpbXBsZUxpbmVzUGF0aCA6IExpbmVCb3hlc1BhdGg7CisgICAgaWYgKGxpbmVM
YXlvdXRQYXRoKCkgPT0gVW5kZXRlcm1pbmVkUGF0aCkKKyAgICAgICAgc2V0TGluZUxheW91dFBh
dGgoU2ltcGxlTGluZUxheW91dDo6Y2FuVXNlRm9yKCp0aGlzKSA/IFNpbXBsZUxpbmVzUGF0aCA6
IExpbmVCb3hlc1BhdGgpOwogCi0gICAgaWYgKG1fbGluZUxheW91dFBhdGggPT0gU2ltcGxlTGlu
ZXNQYXRoKSB7CisgICAgaWYgKGxpbmVMYXlvdXRQYXRoKCkgPT0gU2ltcGxlTGluZXNQYXRoKSB7
CiAgICAgICAgIGxheW91dFNpbXBsZUxpbmVzKHJlbGF5b3V0Q2hpbGRyZW4sIHJlcGFpbnRMb2dp
Y2FsVG9wLCByZXBhaW50TG9naWNhbEJvdHRvbSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBA
IC0zNDcxLDIwICszNDcxLDIwIEBAIGJvb2wgUmVuZGVyQmxvY2tGbG93OjpoYXNMaW5lcygpIGNv
bnN0CiAKIHZvaWQgUmVuZGVyQmxvY2tGbG93OjppbnZhbGlkYXRlTGluZUxheW91dFBhdGgoKQog
ewotICAgIHN3aXRjaCAobV9saW5lTGF5b3V0UGF0aCkgeworICAgIHN3aXRjaCAobGluZUxheW91
dFBhdGgoKSkgewogICAgIGNhc2UgVW5kZXRlcm1pbmVkUGF0aDoKICAgICBjYXNlIEZvcmNlTGlu
ZUJveGVzUGF0aDoKICAgICAgICAgQVNTRVJUKCFtX3NpbXBsZUxpbmVMYXlvdXQpOwogICAgICAg
ICByZXR1cm47CiAgICAgY2FzZSBMaW5lQm94ZXNQYXRoOgogICAgICAgICBBU1NFUlQoIW1fc2lt
cGxlTGluZUxheW91dCk7Ci0gICAgICAgIG1fbGluZUxheW91dFBhdGggPSBVbmRldGVybWluZWRQ
YXRoOworICAgICAgICBzZXRMaW5lTGF5b3V0UGF0aChVbmRldGVybWluZWRQYXRoKTsKICAgICAg
ICAgcmV0dXJuOwogICAgIGNhc2UgU2ltcGxlTGluZXNQYXRoOgogICAgICAgICAvLyBUaGUgc2lt
cGxlIGxpbmUgbGF5b3V0IG1heSBoYXZlIGJlY29tZSBpbnZhbGlkLgogICAgICAgICBtX3NpbXBs
ZUxpbmVMYXlvdXQgPSBudWxscHRyOwogICAgICAgICBzZXROZWVkc0xheW91dCgpOwotICAgICAg
ICBtX2xpbmVMYXlvdXRQYXRoID0gVW5kZXRlcm1pbmVkUGF0aDsKKyAgICAgICAgc2V0TGluZUxh
eW91dFBhdGgoVW5kZXRlcm1pbmVkUGF0aCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC0zNTA4LDcgKzM1MDgsNyBAQCB2b2lkIFJlbmRlckJs
b2NrRmxvdzo6bGF5b3V0U2ltcGxlTGluZXMoYm9vbCByZWxheW91dENoaWxkcmVuLCBMYXlvdXRV
bml0JiByZXBhaQogCiB2b2lkIFJlbmRlckJsb2NrRmxvdzo6ZGVsZXRlTGluZUJveGVzQmVmb3Jl
U2ltcGxlTGluZUxheW91dCgpCiB7Ci0gICAgQVNTRVJUKG1fbGluZUxheW91dFBhdGggPT0gU2lt
cGxlTGluZXNQYXRoKTsKKyAgICBBU1NFUlQobGluZUxheW91dFBhdGgoKSA9PSBTaW1wbGVMaW5l
c1BhdGgpOwogICAgIGxpbmVCb3hlcygpLmRlbGV0ZUxpbmVCb3hlcygpOwogICAgIEFTU0VSVCgh
Y2hpbGRyZW5PZlR5cGU8UmVuZGVyRWxlbWVudD4oKnRoaXMpLmZpcnN0KCkpOwogICAgIGZvciAo
YXV0byYgdGV4dFJlbmRlcmVyIDogY2hpbGRyZW5PZlR5cGU8UmVuZGVyVGV4dD4oKnRoaXMpKQpA
QCAtMzUxNyw3ICszNTE3LDcgQEAgdm9pZCBSZW5kZXJCbG9ja0Zsb3c6OmRlbGV0ZUxpbmVCb3hl
c0JlZm9yZVNpbXBsZUxpbmVMYXlvdXQoKQogCiB2b2lkIFJlbmRlckJsb2NrRmxvdzo6ZW5zdXJl
TGluZUJveGVzKCkKIHsKLSAgICBtX2xpbmVMYXlvdXRQYXRoID0gRm9yY2VMaW5lQm94ZXNQYXRo
OworICAgIHNldExpbmVMYXlvdXRQYXRoKEZvcmNlTGluZUJveGVzUGF0aCk7CiAgICAgaWYgKCFt
X3NpbXBsZUxpbmVMYXlvdXQpCiAgICAgICAgIHJldHVybjsKICAgICBtX3NpbXBsZUxpbmVMYXlv
dXQgPSBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJsb2NrRmxvdy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5o
CmluZGV4IDA5MWNkOWEuLjYzOTcxYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCbG9ja0Zsb3cuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQmxvY2tGbG93LmgKQEAgLTM0NCwxNCArMzQ0LDE4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IGJvb2wgaGFzTGluZXMoKSBjb25zdCBvdmVycmlkZSBmaW5hbDsKICAgICB2aXJ0dWFsIHZvaWQg
aW52YWxpZGF0ZUxpbmVMYXlvdXRQYXRoKCkgb3ZlcnJpZGUgZmluYWw7CiAKKyAgICBlbnVtIExp
bmVMYXlvdXRQYXRoIHsgVW5kZXRlcm1pbmVkUGF0aCA9IDAsIFNpbXBsZUxpbmVzUGF0aCwgTGlu
ZUJveGVzUGF0aCwgRm9yY2VMaW5lQm94ZXNQYXRoIH07CisgICAgTGluZUxheW91dFBhdGggbGlu
ZUxheW91dFBhdGgoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxMaW5lTGF5b3V0UGF0aD4o
cmVuZGVyQmxvY2tGbG93TGluZUxheW91dFBhdGgoKSk7IH0KKyAgICB2b2lkIHNldExpbmVMYXlv
dXRQYXRoKExpbmVMYXlvdXRQYXRoIHBhdGgpIHsgc2V0UmVuZGVyQmxvY2tGbG93TGluZUxheW91
dFBhdGgocGF0aCk7IH0KKwogICAgIC8vIEhlbHBlciBtZXRob2RzIGZvciBjb21wdXRpbmcgbGlu
ZSBjb3VudHMgYW5kIGhlaWdodHMgZm9yIGxpbmUgY291bnRzLgogICAgIFJvb3RJbmxpbmVCb3gq
IGxpbmVBdEluZGV4KGludCkgY29uc3Q7CiAgICAgaW50IGxpbmVDb3VudChjb25zdCBSb290SW5s
aW5lQm94KiA9IG51bGxwdHIsIGJvb2wqID0gbnVsbHB0cikgY29uc3Q7CiAgICAgaW50IGhlaWdo
dEZvckxpbmVDb3VudChpbnQpOwogICAgIHZvaWQgY2xlYXJUcnVuY2F0aW9uKCk7CiAKLSAgICB2
b2lkIHNldEhhc01hcmt1cFRydW5jYXRpb24oYm9vbCBiKSB7IG1faGFzTWFya3VwVHJ1bmNhdGlv
biA9IGI7IH0KLSAgICBib29sIGhhc01hcmt1cFRydW5jYXRpb24oKSBjb25zdCB7IHJldHVybiBt
X2hhc01hcmt1cFRydW5jYXRpb247IH0KKyAgICB2b2lkIHNldEhhc01hcmt1cFRydW5jYXRpb24o
Ym9vbCBiKSB7IHNldFJlbmRlckJsb2NrRmxvd0hhc01hcmt1cFRydW5jYXRpb24oYik7IH0KKyAg
ICBib29sIGhhc01hcmt1cFRydW5jYXRpb24oKSBjb25zdCB7IHJldHVybiByZW5kZXJCbG9ja0Zs
b3dIYXNNYXJrdXBUcnVuY2F0aW9uKCk7IH0KIAogICAgIGJvb2wgY29udGFpbnNOb25aZXJvQmlk
aUxldmVsKCkgY29uc3Q7CiAKQEAgLTYzNCw3ICs2MzgsNyBAQCBpbmxpbmUgYm9vbCBSZW5kZXJF
bGVtZW50Ojppc1JlbmRlck5hbWVkRmxvd0ZyYWdtZW50Q29udGFpbmVyKCkgY29uc3QKIAogaW5s
aW5lIGNvbnN0IFNpbXBsZUxpbmVMYXlvdXQ6OkxheW91dCogUmVuZGVyQmxvY2tGbG93OjpzaW1w
bGVMaW5lTGF5b3V0KCkgY29uc3QKIHsKLSAgICBBU1NFUlQobV9saW5lTGF5b3V0UGF0aCA9PSBT
aW1wbGVMaW5lc1BhdGggfHwgIW1fc2ltcGxlTGluZUxheW91dCk7CisgICAgQVNTRVJUKGxpbmVM
YXlvdXRQYXRoKCkgPT0gU2ltcGxlTGluZXNQYXRoIHx8ICFtX3NpbXBsZUxpbmVMYXlvdXQpOwog
ICAgIHJldHVybiBtX3NpbXBsZUxpbmVMYXlvdXQuZ2V0KCk7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcAppbmRleCA2ODZmNmZmLi42OTMyMzhmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuY3BwCkBAIC05MSw2ICs5MSwx
MSBAQCBpbmxpbmUgUmVuZGVyRWxlbWVudDo6UmVuZGVyRWxlbWVudChDb250YWluZXJOb2RlJiBl
bGVtZW50T3JEb2N1bWVudCwgUmVmPFJlbmRlcgogICAgICwgbV9oYXNDb3VudGVyTm9kZU1hcChm
YWxzZSkKICAgICAsIG1faXNDU1NBbmltYXRpbmcoZmFsc2UpCiAgICAgLCBtX2hhc0NvbnRpbnVh
dGlvbihmYWxzZSkKKyAgICAsIG1fcmVuZGVyQmxvY2tIYXNNYXJnaW5CZWZvcmVRdWlyayhmYWxz
ZSkKKyAgICAsIG1fcmVuZGVyQmxvY2tIYXNNYXJnaW5BZnRlclF1aXJrKGZhbHNlKQorICAgICwg
bV9yZW5kZXJCbG9ja0hhc0JvcmRlck9yUGFkZGluZ0xvZ2ljYWxXaWR0aENoYW5nZWQoZmFsc2Up
CisgICAgLCBtX3JlbmRlckJsb2NrRmxvd0hhc01hcmt1cFRydW5jYXRpb24oZmFsc2UpCisgICAg
LCBtX3JlbmRlckJsb2NrRmxvd0xpbmVMYXlvdXRQYXRoKFJlbmRlckJsb2NrRmxvdzo6VW5kZXRl
cm1pbmVkUGF0aCkKICAgICAsIG1fZmlyc3RDaGlsZChudWxscHRyKQogICAgICwgbV9sYXN0Q2hp
bGQobnVsbHB0cikKICAgICAsIG1fc3R5bGUoV1RGOjptb3ZlKHN0eWxlKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCmluZGV4IDgzMDRkNmQuLmMwMzQzZWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaApAQCAtMjM1LDYgKzIzNSwxOCBA
QCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIHZvaWQgcmVtb3ZlQ29udHJvbFN0YXRlc0ZvclJlbmRl
cmVyKGNvbnN0IFJlbmRlck9iamVjdCopOwogICAgIHN0YXRpYyB2b2lkIGFkZENvbnRyb2xTdGF0
ZXNGb3JSZW5kZXJlcihjb25zdCBSZW5kZXJPYmplY3QqLCBDb250cm9sU3RhdGVzKik7CiAKKyAg
ICB2b2lkIHNldFJlbmRlckJsb2NrSGFzTWFyZ2luQmVmb3JlUXVpcmsoYm9vbCBiKSB7IG1fcmVu
ZGVyQmxvY2tIYXNNYXJnaW5CZWZvcmVRdWlyayA9IGI7IH0KKyAgICB2b2lkIHNldFJlbmRlckJs
b2NrSGFzTWFyZ2luQWZ0ZXJRdWlyayhib29sIGIpIHsgbV9yZW5kZXJCbG9ja0hhc01hcmdpbkFm
dGVyUXVpcmsgPSBiOyB9CisgICAgdm9pZCBzZXRSZW5kZXJCbG9ja0hhc0JvcmRlck9yUGFkZGlu
Z0xvZ2ljYWxXaWR0aENoYW5nZWQoYm9vbCBiKSB7IG1fcmVuZGVyQmxvY2tIYXNCb3JkZXJPclBh
ZGRpbmdMb2dpY2FsV2lkdGhDaGFuZ2VkID0gYjsgfQorICAgIGJvb2wgcmVuZGVyQmxvY2tIYXNN
YXJnaW5CZWZvcmVRdWlyaygpIGNvbnN0IHsgcmV0dXJuIG1fcmVuZGVyQmxvY2tIYXNNYXJnaW5C
ZWZvcmVRdWlyazsgfQorICAgIGJvb2wgcmVuZGVyQmxvY2tIYXNNYXJnaW5BZnRlclF1aXJrKCkg
Y29uc3QgeyByZXR1cm4gbV9yZW5kZXJCbG9ja0hhc01hcmdpbkFmdGVyUXVpcms7IH0KKyAgICBi
b29sIHJlbmRlckJsb2NrSGFzQm9yZGVyT3JQYWRkaW5nTG9naWNhbFdpZHRoQ2hhbmdlZCgpIGNv
bnN0IHsgcmV0dXJuIG1fcmVuZGVyQmxvY2tIYXNCb3JkZXJPclBhZGRpbmdMb2dpY2FsV2lkdGhD
aGFuZ2VkOyB9CisKKyAgICB2b2lkIHNldFJlbmRlckJsb2NrRmxvd0xpbmVMYXlvdXRQYXRoKHVu
c2lnbmVkIHUpIHsgbV9yZW5kZXJCbG9ja0Zsb3dMaW5lTGF5b3V0UGF0aCA9IHU7IH0KKyAgICB2
b2lkIHNldFJlbmRlckJsb2NrRmxvd0hhc01hcmt1cFRydW5jYXRpb24oYm9vbCBiKSB7IG1fcmVu
ZGVyQmxvY2tGbG93SGFzTWFya3VwVHJ1bmNhdGlvbiA9IGI7IH0KKyAgICB1bnNpZ25lZCByZW5k
ZXJCbG9ja0Zsb3dMaW5lTGF5b3V0UGF0aCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVuZGVyQmxvY2tG
bG93TGluZUxheW91dFBhdGg7IH0KKyAgICBib29sIHJlbmRlckJsb2NrRmxvd0hhc01hcmt1cFRy
dW5jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3JlbmRlckJsb2NrRmxvd0hhc01hcmt1cFRydW5j
YXRpb247IH0KKwogcHJpdmF0ZToKICAgICBSZW5kZXJFbGVtZW50KENvbnRhaW5lck5vZGUmLCBS
ZWY8UmVuZGVyU3R5bGU+JiYsIHVuc2lnbmVkIGJhc2VUeXBlRmxhZ3MpOwogICAgIHZvaWQgbm9k
ZSgpIGNvbnN0ID0gZGVsZXRlOwpAQCAtMjgwLDYgKzI5MiwxMiBAQCBwcml2YXRlOgogICAgIHVu
c2lnbmVkIG1faXNDU1NBbmltYXRpbmcgOiAxOwogICAgIHVuc2lnbmVkIG1faGFzQ29udGludWF0
aW9uIDogMTsKIAorICAgIHVuc2lnbmVkIG1fcmVuZGVyQmxvY2tIYXNNYXJnaW5CZWZvcmVRdWly
ayA6IDE7CisgICAgdW5zaWduZWQgbV9yZW5kZXJCbG9ja0hhc01hcmdpbkFmdGVyUXVpcmsgOiAx
OworICAgIHVuc2lnbmVkIG1fcmVuZGVyQmxvY2tIYXNCb3JkZXJPclBhZGRpbmdMb2dpY2FsV2lk
dGhDaGFuZ2VkIDogMTsKKyAgICB1bnNpZ25lZCBtX3JlbmRlckJsb2NrRmxvd0hhc01hcmt1cFRy
dW5jYXRpb24gOiAxOworICAgIHVuc2lnbmVkIG1fcmVuZGVyQmxvY2tGbG93TGluZUxheW91dFBh
dGggOiAyOworCiAgICAgUmVuZGVyT2JqZWN0KiBtX2ZpcnN0Q2hpbGQ7CiAgICAgUmVuZGVyT2Jq
ZWN0KiBtX2xhc3RDaGlsZDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckZsb3dUaHJlYWQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZs
b3dUaHJlYWQuY3BwCmluZGV4IGQzMjI1MGUuLjYwOWYwOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbG93VGhyZWFkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyRmxvd1RocmVhZC5jcHAKQEAgLTU5Miw3ICs1OTIsNyBAQCB2b2lk
IFJlbmRlckZsb3dUaHJlYWQ6OnJlbW92ZVJlbmRlckJveFJlZ2lvbkluZm8oUmVuZGVyQm94KiBi
b3gpCiAKIHZvaWQgUmVuZGVyRmxvd1RocmVhZDo6cmVtb3ZlTGluZVJlZ2lvbkluZm8oY29uc3Qg
UmVuZGVyQmxvY2tGbG93KiBibG9ja0Zsb3cpCiB7Ci0gICAgaWYgKCFtX2xpbmVUb1JlZ2lvbk1h
cCB8fCBibG9ja0Zsb3ctPm1fbGluZUxheW91dFBhdGggPT0gU2ltcGxlTGluZXNQYXRoKQorICAg
IGlmICghbV9saW5lVG9SZWdpb25NYXAgfHwgYmxvY2tGbG93LT5saW5lTGF5b3V0UGF0aCgpID09
IFNpbXBsZUxpbmVzUGF0aCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgZm9yIChSb290SW5saW5l
Qm94KiBjdXJyID0gYmxvY2tGbG93LT5maXJzdFJvb3RCb3goKTsgY3VycjsgY3VyciA9IGN1cnIt
Pm5leHRSb290Qm94KCkpIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>