<?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>47112</bug_id>
          
          <creation_ts>2010-10-04 14:03:41 -0700</creation_ts>
          <short_desc>Convert addOverhangingFloats and addIntrudingFloats to be block-flow-aware.</short_desc>
          <delta_ts>2010-10-04 23:24:54 -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>PC</rep_platform>
          <op_sys>OS X 10.5</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>46123</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>289124</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-10-04 14:03:41 -0700</bug_when>
    <thetext>Convert addOverhangingFloats and addIntrudingFloats to be block-flow-aware.  Also clean up how floats are placed to use a bit instead of the magic -1 value on top().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289162</commentid>
    <comment_count>1</comment_count>
      <attachid>69688</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-10-04 14:49:09 -0700</bug_when>
    <thetext>Created attachment 69688
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289186</commentid>
    <comment_count>2</comment_count>
      <attachid>69688</attachid>
    <who name="">mitz</who>
    <bug_when>2010-10-04 15:08:19 -0700</bug_when>
    <thetext>Comment on attachment 69688
Patch

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

&gt; WebCore/rendering/RenderBlock.h:393
&gt;          int left() const { return m_frameRect.x(); }
&gt;          int right() const { return m_frameRect.right(); }
&gt;          int top() const { return m_frameRect.y(); }

Should these accessors ASSERT(m_isPlaced)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289462</commentid>
    <comment_count>3</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-10-04 23:14:22 -0700</bug_when>
    <thetext>Fixed in r69082.  The asserts caught some badness, so there&apos;s some additional code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289465</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-10-04 23:24:54 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/69082 might have broken Qt Linux Release minimal, Qt Linux ARMv5 Release, and Qt Linux ARMv7 Release</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69688</attachid>
            <date>2010-10-04 14:49:09 -0700</date>
            <delta_ts>2010-10-04 15:08:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>15264</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2OTAzMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzMgQEAKKzIwMTAtMTAtMDQgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NzExMgorCisgICAgICAgIENvbnZl
cnQgYWRkT3ZlcmhhbmdpbmdGbG9hdHMgYW5kIGFkZEludHJ1ZGluZ0Zsb2F0cyB0byBiZSBibG9j
ay1mbG93LWF3YXJlLgorICAgICAgICAKKyAgICAgICAgQWxzbyBjbGVhbiB1cCBob3cgZmxvYXRz
IGFyZSBwbGFjZWQgdG8gdXNlIGEgYml0IGluc3RlYWQgb2YgdGhlIG1hZ2ljIC0xIHZhbHVlIG9u
IHRvcCgpLgorICAgICAgICAKKyAgICAgICAgTm8gbmV3IHRlc3RzLiAoT09QUyEpCisKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
QmxvY2s6OmxheW91dEJsb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpsYXlv
dXRCbG9ja0NoaWxkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjppbnNlcnRGbG9h
dGluZ09iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6cmVtb3ZlRmxvYXRp
bmdPYmplY3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OnJlbW92ZUZsb2F0aW5n
T2JqZWN0c0JlbG93KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpwb3NpdGlvbk5l
d0Zsb2F0cyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6bWFya0xpbmVzRGlydHlJ
bkJsb2NrUmFuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmNsZWFyRmxvYXRz
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjphZGRPdmVyaGFuZ2luZ0Zsb2F0cyk6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6YWRkSW50cnVkaW5nRmxvYXRzKToKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJsb2NrOjpGbG9hdGluZ09iamVjdDo6RmxvYXRpbmdPYmplY3QpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyQmxvY2s6OkZsb2F0aW5nT2JqZWN0Ojppc1BsYWNlZCk6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJCbG9jazo6RmxvYXRpbmdPYmplY3Q6OnNldElzUGxhY2VkKToKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckJsb2NrOjpkZXRlcm1pbmVTdGFydFBvc2l0aW9uKToKKwogMjAxMC0xMC0wNCAgQnJl
bnQgRnVsZ2hhbSAgPGJmdWxnaGFtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwg
YnVpbGQgZml4IGZvciByNjg5NTEuCkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
ay5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCShy
ZXZpc2lvbiA2OTAyNSkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTIyNSw3ICsxMjI1LDcgQEAgdm9pZCBSZW5kZXJCbG9jazo6bGF5b3V0
QmxvY2soYm9vbCByZWxheQogICAgICAgICAgICAgICAgIGlmIChjaGlsZC0+aXNCbG9ja0Zsb3co
KSAmJiAhY2hpbGQtPmlzRmxvYXRpbmdPclBvc2l0aW9uZWQoKSkgewogICAgICAgICAgICAgICAg
ICAgICBSZW5kZXJCbG9jayogYmxvY2sgPSB0b1JlbmRlckJsb2NrKGNoaWxkKTsKICAgICAgICAg
ICAgICAgICAgICAgaWYgKGJsb2NrLT5sb3dlc3RGbG9hdExvZ2ljYWxCb3R0b20oKSArIGJsb2Nr
LT5sb2dpY2FsVG9wKCkgPiBuZXdIZWlnaHQpCi0gICAgICAgICAgICAgICAgICAgICAgICBhZGRP
dmVyaGFuZ2luZ0Zsb2F0cyhibG9jaywgLWJsb2NrLT54KCksIC1ibG9jay0+eSgpLCBmYWxzZSk7
CisgICAgICAgICAgICAgICAgICAgICAgICBhZGRPdmVyaGFuZ2luZ0Zsb2F0cyhibG9jaywgLWJs
b2NrLT5sb2dpY2FsTGVmdCgpLCAtYmxvY2stPmxvZ2ljYWxUb3AoKSwgZmFsc2UpOwogICAgICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtMTk1MCw3ICsxOTUwLDcg
QEAgdm9pZCBSZW5kZXJCbG9jazo6bGF5b3V0QmxvY2tDaGlsZChSZW5kZQogICAgIC8vIElmIHRo
ZSBjaGlsZCBoYXMgb3ZlcmhhbmdpbmcgZmxvYXRzIHRoYXQgaW50cnVkZSBpbnRvIGZvbGxvd2lu
ZyBzaWJsaW5ncyAob3IgcG9zc2libHkgb3V0CiAgICAgLy8gb2YgdGhpcyBibG9jayksIHRoZW4g
dGhlIHBhcmVudCBnZXRzIG5vdGlmaWVkIG9mIHRoZSBmbG9hdHMgbm93LgogICAgIGlmIChjaGls
ZFJlbmRlckJsb2NrICYmIGNoaWxkUmVuZGVyQmxvY2stPmNvbnRhaW5zRmxvYXRzKCkpCi0gICAg
ICAgIG1heEZsb2F0TG9naWNhbEJvdHRvbSA9IG1heChtYXhGbG9hdExvZ2ljYWxCb3R0b20sIGFk
ZE92ZXJoYW5naW5nRmxvYXRzKHRvUmVuZGVyQmxvY2soY2hpbGQpLCAtY2hpbGQtPngoKSwgLWNo
aWxkLT55KCksICFjaGlsZE5lZWRlZExheW91dCkpOworICAgICAgICBtYXhGbG9hdExvZ2ljYWxC
b3R0b20gPSBtYXgobWF4RmxvYXRMb2dpY2FsQm90dG9tLCBhZGRPdmVyaGFuZ2luZ0Zsb2F0cyh0
b1JlbmRlckJsb2NrKGNoaWxkKSwgLWNoaWxkLT5sb2dpY2FsTGVmdCgpLCAtY2hpbGQtPmxvZ2lj
YWxUb3AoKSwgIWNoaWxkTmVlZGVkTGF5b3V0KSk7CiAKICAgICBJbnRTaXplIGNoaWxkT2Zmc2V0
KGNoaWxkLT54KCkgLSBvbGRSZWN0LngoKSwgY2hpbGQtPnkoKSAtIG9sZFJlY3QueSgpKTsKICAg
ICBpZiAoY2hpbGRPZmZzZXQud2lkdGgoKSB8fCBjaGlsZE9mZnNldC5oZWlnaHQoKSkgewpAQCAt
MjkyNyw4ICsyOTI3LDYgQEAgUmVuZGVyQmxvY2s6OkZsb2F0aW5nT2JqZWN0KiBSZW5kZXJCbG9j
awogICAgIC8vIENyZWF0ZSB0aGUgc3BlY2lhbCBvYmplY3QgZW50cnkgJiBhcHBlbmQgaXQgdG8g
dGhlIGxpc3QKIAogICAgIEZsb2F0aW5nT2JqZWN0KiBuZXdPYmogPSBuZXcgRmxvYXRpbmdPYmpl
Y3Qoby0+c3R5bGUoKS0+ZmxvYXRpbmcoKSA9PSBGTEVGVCA/IEZsb2F0aW5nT2JqZWN0OjpGbG9h
dExlZnQgOiBGbG9hdGluZ09iamVjdDo6RmxvYXRSaWdodCk7Ci0KLSAgICBuZXdPYmotPnNldFRv
cCgtMSk7CiAgICAgCiAgICAgLy8gT3VyIGxvY2F0aW9uIGlzIGlycmVsZXZhbnQgaWYgd2UncmUg
dW5zcGxpdHRhYmxlIG9yIG5vIHBhZ2luYXRpb24gaXMgaW4gZWZmZWN0LgogICAgIC8vIEp1c3Qg
Z28gYWhlYWQgYW5kIGxheSBvdXQgdGhlIGZsb2F0LgpAQCAtMjk1NywxMiArMjk1NSwxNCBAQCB2
b2lkIFJlbmRlckJsb2NrOjpyZW1vdmVGbG9hdGluZ09iamVjdChSCiAgICAgICAgIHdoaWxlIChp
dC5jdXJyZW50KCkpIHsKICAgICAgICAgICAgIGlmIChpdC5jdXJyZW50KCktPm1fcmVuZGVyZXIg
PT0gbykgewogICAgICAgICAgICAgICAgIGlmIChjaGlsZHJlbklubGluZSgpKSB7Ci0gICAgICAg
ICAgICAgICAgICAgIGludCBib3R0b20gPSBpdC5jdXJyZW50KCktPmJvdHRvbSgpOworICAgICAg
ICAgICAgICAgICAgICBpbnQgbG9naWNhbFRvcCA9IGxvZ2ljYWxUb3BGb3JGbG9hdChpdC5jdXJy
ZW50KCkpOworICAgICAgICAgICAgICAgICAgICBpbnQgbG9naWNhbEJvdHRvbSA9IGxvZ2ljYWxC
b3R0b21Gb3JGbG9hdChpdC5jdXJyZW50KCkpOworICAgICAgICAgICAgICAgICAgICAKICAgICAg
ICAgICAgICAgICAgICAgLy8gU3BlY2lhbC1jYXNlIHplcm8tIGFuZCBsZXNzLXRoYW4temVyby1o
ZWlnaHQgZmxvYXRzOiB0aG9zZSBkb24ndCB0b3VjaAogICAgICAgICAgICAgICAgICAgICAvLyB0
aGUgbGluZSB0aGF0IHRoZXkncmUgb24sIGJ1dCBpdCBzdGlsbCBuZWVkcyB0byBiZSBkaXJ0aWVk
LiBUaGlzIGlzCiAgICAgICAgICAgICAgICAgICAgIC8vIGFjY29tcGxpc2hlZCBieSBwcmV0ZW5k
aW5nIHRoZXkgaGF2ZSBhIGhlaWdodCBvZiAxLgotICAgICAgICAgICAgICAgICAgICBib3R0b20g
PSBtYXgoYm90dG9tLCBpdC5jdXJyZW50KCktPnRvcCgpICsgMSk7Ci0gICAgICAgICAgICAgICAg
ICAgIG1hcmtMaW5lc0RpcnR5SW5WZXJ0aWNhbFJhbmdlKDAsIGJvdHRvbSk7CisgICAgICAgICAg
ICAgICAgICAgIGxvZ2ljYWxCb3R0b20gPSBtYXgobG9naWNhbEJvdHRvbSwgbG9naWNhbFRvcCAr
IDEpOworICAgICAgICAgICAgICAgICAgICBtYXJrTGluZXNEaXJ0eUluQmxvY2tSYW5nZSgwLCBs
b2dpY2FsQm90dG9tKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgbV9mbG9h
dGluZ09iamVjdHMtPnJlbW92ZVJlZihpdC5jdXJyZW50KCkpOwogICAgICAgICAgICAgfQpAQCAt
Mjk3Nyw3ICsyOTc3LDcgQEAgdm9pZCBSZW5kZXJCbG9jazo6cmVtb3ZlRmxvYXRpbmdPYmplY3Rz
QgogICAgICAgICByZXR1cm47CiAgICAgCiAgICAgRmxvYXRpbmdPYmplY3QqIGN1cnIgPSBtX2Zs
b2F0aW5nT2JqZWN0cy0+bGFzdCgpOwotICAgIHdoaWxlIChjdXJyICE9IGxhc3RGbG9hdCAmJiAo
Y3Vyci0+dG9wKCkgPT0gLTEgfHwgY3Vyci0+dG9wKCkgPj0geSkpIHsKKyAgICB3aGlsZSAoY3Vy
ciAhPSBsYXN0RmxvYXQgJiYgKCFjdXJyLT5pc1BsYWNlZCgpIHx8IGN1cnItPnRvcCgpID49IHkp
KSB7CiAgICAgICAgIG1fZmxvYXRpbmdPYmplY3RzLT5yZW1vdmVMYXN0KCk7CiAgICAgICAgIGN1
cnIgPSBtX2Zsb2F0aW5nT2JqZWN0cy0+bGFzdCgpOwogICAgIH0KQEAgLTI5OTEsMTQgKzI5OTEs
MTQgQEAgYm9vbCBSZW5kZXJCbG9jazo6cG9zaXRpb25OZXdGbG9hdHMoKQogICAgIEZsb2F0aW5n
T2JqZWN0KiBmID0gbV9mbG9hdGluZ09iamVjdHMtPmxhc3QoKTsKIAogICAgIC8vIElmIGFsbCBm
bG9hdHMgaGF2ZSBhbHJlYWR5IGJlZW4gcG9zaXRpb25lZCwgdGhlbiB3ZSBoYXZlIG5vIHdvcmsg
dG8gZG8uCi0gICAgaWYgKCFmIHx8IGYtPnRvcCgpICE9IC0xKQorICAgIGlmICghZiB8fCBmLT5p
c1BsYWNlZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICAvLyBNb3ZlIGJhY2t3YXJk
cyB0aHJvdWdoIG91ciBmbG9hdGluZyBvYmplY3QgbGlzdCB1bnRpbCB3ZSBmaW5kIGEgZmxvYXQg
dGhhdCBoYXMKICAgICAvLyBhbHJlYWR5IGJlZW4gcG9zaXRpb25lZC4gIFRoZW4gd2UnbGwgYmUg
YWJsZSB0byBtb3ZlIGZvcndhcmQsIHBvc2l0aW9uaW5nIGFsbCBvZgogICAgIC8vIHRoZSBuZXcg
ZmxvYXRzIHRoYXQgbmVlZCBpdC4KICAgICBGbG9hdGluZ09iamVjdCogbGFzdEZsb2F0ID0gbV9m
bG9hdGluZ09iamVjdHMtPmdldFByZXYoKTsKLSAgICB3aGlsZSAobGFzdEZsb2F0ICYmIGxhc3RG
bG9hdC0+dG9wKCkgPT0gLTEpIHsKKyAgICB3aGlsZSAobGFzdEZsb2F0ICYmICFsYXN0RmxvYXQt
PmlzUGxhY2VkKCkpIHsKICAgICAgICAgZiA9IG1fZmxvYXRpbmdPYmplY3RzLT5wcmV2KCk7CiAg
ICAgICAgIGxhc3RGbG9hdCA9IG1fZmxvYXRpbmdPYmplY3RzLT5nZXRQcmV2KCk7CiAgICAgfQpA
QCAtMzA4OCw2ICszMDg4LDggQEAgYm9vbCBSZW5kZXJCbG9jazo6cG9zaXRpb25OZXdGbG9hdHMo
KQogICAgICAgICBmLT5zZXRUb3AoeSk7CiAgICAgICAgIGYtPnNldEhlaWdodChvLT5tYXJnaW5U
b3AoKSArIG8tPmhlaWdodCgpICsgby0+bWFyZ2luQm90dG9tKCkpOwogCisgICAgICAgIGYtPnNl
dElzUGxhY2VkKCk7CisKICAgICAgICAgLy8gSWYgdGhlIGNoaWxkIG1vdmVkLCB3ZSBoYXZlIHRv
IHJlcGFpbnQgaXQuCiAgICAgICAgIGlmIChvLT5jaGVja0ZvclJlcGFpbnREdXJpbmdMYXlvdXQo
KSkKICAgICAgICAgICAgIG8tPnJlcGFpbnREdXJpbmdMYXlvdXRJZk1vdmVkKG9sZFJlY3QpOwpA
QCAtMzU4NSwxOSArMzU4NywxOSBAQCBpbnQgUmVuZGVyQmxvY2s6OmxlZnRtb3N0UG9zaXRpb24o
Ym9vbCBpCiAgICAgcmV0dXJuIGxlZnQ7CiB9CiAKLXZvaWQgUmVuZGVyQmxvY2s6Om1hcmtMaW5l
c0RpcnR5SW5WZXJ0aWNhbFJhbmdlKGludCB0b3AsIGludCBib3R0b20sIFJvb3RJbmxpbmVCb3gq
IGhpZ2hlc3QpCit2b2lkIFJlbmRlckJsb2NrOjptYXJrTGluZXNEaXJ0eUluQmxvY2tSYW5nZShp
bnQgbG9naWNhbFRvcCwgaW50IGxvZ2ljYWxCb3R0b20sIFJvb3RJbmxpbmVCb3gqIGhpZ2hlc3Qp
CiB7Ci0gICAgaWYgKHRvcCA+PSBib3R0b20pCisgICAgaWYgKGxvZ2ljYWxUb3AgPj0gbG9naWNh
bEJvdHRvbSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgUm9vdElubGluZUJveCogbG93ZXN0RGly
dHlMaW5lID0gbGFzdFJvb3RCb3goKTsKICAgICBSb290SW5saW5lQm94KiBhZnRlckxvd2VzdCA9
IGxvd2VzdERpcnR5TGluZTsKLSAgICB3aGlsZSAobG93ZXN0RGlydHlMaW5lICYmIGxvd2VzdERp
cnR5TGluZS0+YmxvY2tIZWlnaHQoKSA+PSBib3R0b20pIHsKKyAgICB3aGlsZSAobG93ZXN0RGly
dHlMaW5lICYmIGxvd2VzdERpcnR5TGluZS0+YmxvY2tIZWlnaHQoKSA+PSBsb2dpY2FsQm90dG9t
KSB7CiAgICAgICAgIGFmdGVyTG93ZXN0ID0gbG93ZXN0RGlydHlMaW5lOwogICAgICAgICBsb3dl
c3REaXJ0eUxpbmUgPSBsb3dlc3REaXJ0eUxpbmUtPnByZXZSb290Qm94KCk7CiAgICAgfQogCi0g
ICAgd2hpbGUgKGFmdGVyTG93ZXN0ICYmIGFmdGVyTG93ZXN0ICE9IGhpZ2hlc3QgJiYgYWZ0ZXJM
b3dlc3QtPmJsb2NrSGVpZ2h0KCkgPj0gdG9wKSB7CisgICAgd2hpbGUgKGFmdGVyTG93ZXN0ICYm
IGFmdGVyTG93ZXN0ICE9IGhpZ2hlc3QgJiYgYWZ0ZXJMb3dlc3QtPmJsb2NrSGVpZ2h0KCkgPj0g
bG9naWNhbFRvcCkgewogICAgICAgICBhZnRlckxvd2VzdC0+bWFya0RpcnR5KCk7CiAgICAgICAg
IGFmdGVyTG93ZXN0ID0gYWZ0ZXJMb3dlc3QtPnByZXZSb290Qm94KCk7CiAgICAgfQpAQCAtMzY5
OSwxMSArMzcwMSwxMSBAQCB2b2lkIFJlbmRlckJsb2NrOjpjbGVhckZsb2F0cygpCiAgICAgICAg
IH0KICAgICAgICAgZGVsZXRlQWxsVmFsdWVzKGZsb2F0TWFwKTsKIAotICAgICAgICBtYXJrTGlu
ZXNEaXJ0eUluVmVydGljYWxSYW5nZShjaGFuZ2VMb2dpY2FsVG9wLCBjaGFuZ2VMb2dpY2FsQm90
dG9tKTsKKyAgICAgICAgbWFya0xpbmVzRGlydHlJbkJsb2NrUmFuZ2UoY2hhbmdlTG9naWNhbFRv
cCwgY2hhbmdlTG9naWNhbEJvdHRvbSk7CiAgICAgfQogfQogCi1pbnQgUmVuZGVyQmxvY2s6OmFk
ZE92ZXJoYW5naW5nRmxvYXRzKFJlbmRlckJsb2NrKiBjaGlsZCwgaW50IHhvZmYsIGludCB5b2Zm
LCBib29sIG1ha2VDaGlsZFBhaW50T3RoZXJGbG9hdHMpCitpbnQgUmVuZGVyQmxvY2s6OmFkZE92
ZXJoYW5naW5nRmxvYXRzKFJlbmRlckJsb2NrKiBjaGlsZCwgaW50IGxvZ2ljYWxMZWZ0T2Zmc2V0
LCBpbnQgbG9naWNhbFRvcE9mZnNldCwgYm9vbCBtYWtlQ2hpbGRQYWludE90aGVyRmxvYXRzKQog
ewogICAgIC8vIFByZXZlbnQgZmxvYXRzIGZyb20gYmVpbmcgYWRkZWQgdG8gdGhlIGNhbnZhcyBi
eSB0aGUgcm9vdCBlbGVtZW50LCBlLmcuLCA8aHRtbD4uCiAgICAgaWYgKGNoaWxkLT5oYXNPdmVy
Zmxvd0NsaXAoKSB8fCAhY2hpbGQtPmNvbnRhaW5zRmxvYXRzKCkgfHwgY2hpbGQtPmlzUm9vdCgp
IHx8IGNoaWxkLT5oYXNDb2x1bW5zKCkgfHwgY2hpbGQtPmlzQmxvY2tGbG93Um9vdCgpKQpAQCAt
MzcxNSwxMyArMzcxNywxNSBAQCBpbnQgUmVuZGVyQmxvY2s6OmFkZE92ZXJoYW5naW5nRmxvYXRz
KFJlCiAgICAgLy8gb3ZlcmZsb3cuCiAgICAgRGVwcmVjYXRlZFB0ckxpc3RJdGVyYXRvcjxGbG9h
dGluZ09iamVjdD4gaXQoKmNoaWxkLT5tX2Zsb2F0aW5nT2JqZWN0cyk7CiAgICAgZm9yIChGbG9h
dGluZ09iamVjdCogcjsgKHIgPSBpdC5jdXJyZW50KCkpOyArK2l0KSB7Ci0gICAgICAgIGludCBi
b3R0b20gPSBjaGlsZC0+eSgpICsgci0+Ym90dG9tKCk7Ci0gICAgICAgIGxvd2VzdEZsb2F0TG9n
aWNhbEJvdHRvbSA9IG1heChsb3dlc3RGbG9hdExvZ2ljYWxCb3R0b20sIGJvdHRvbSk7CisgICAg
ICAgIGludCBsb2dpY2FsQm90dG9tID0gY2hpbGQtPmxvZ2ljYWxUb3AoKSArIGxvZ2ljYWxCb3R0
b21Gb3JGbG9hdChyKTsKKyAgICAgICAgbG93ZXN0RmxvYXRMb2dpY2FsQm90dG9tID0gbWF4KGxv
d2VzdEZsb2F0TG9naWNhbEJvdHRvbSwgbG9naWNhbEJvdHRvbSk7CiAKLSAgICAgICAgaWYgKGJv
dHRvbSA+IGhlaWdodCgpKSB7CisgICAgICAgIGlmIChsb2dpY2FsQm90dG9tID4gbG9naWNhbEhl
aWdodCgpKSB7CiAgICAgICAgICAgICAvLyBJZiB0aGUgb2JqZWN0IGlzIG5vdCBpbiB0aGUgbGlz
dCwgd2UgYWRkIGl0IG5vdy4KICAgICAgICAgICAgIGlmICghY29udGFpbnNGbG9hdChyLT5tX3Jl
bmRlcmVyKSkgewotICAgICAgICAgICAgICAgIEZsb2F0aW5nT2JqZWN0KiBmbG9hdGluZ09iaiA9
IG5ldyBGbG9hdGluZ09iamVjdChyLT50eXBlKCksIEludFJlY3Qoci0+bGVmdCgpIC0geG9mZiwg
ci0+dG9wKCkgLSB5b2ZmLCByLT53aWR0aCgpLCByLT5oZWlnaHQoKSkpOworICAgICAgICAgICAg
ICAgIGludCBsZWZ0T2Zmc2V0ID0gc3R5bGUoKS0+aXNWZXJ0aWNhbEJsb2NrRmxvdygpID8gbG9n
aWNhbExlZnRPZmZzZXQgOiBsb2dpY2FsVG9wT2Zmc2V0OworICAgICAgICAgICAgICAgIGludCB0
b3BPZmZzZXQgPSBzdHlsZSgpLT5pc1ZlcnRpY2FsQmxvY2tGbG93KCkgPyBsb2dpY2FsVG9wT2Zm
c2V0IDogbG9naWNhbExlZnRPZmZzZXQ7CisgICAgICAgICAgICAgICAgRmxvYXRpbmdPYmplY3Qq
IGZsb2F0aW5nT2JqID0gbmV3IEZsb2F0aW5nT2JqZWN0KHItPnR5cGUoKSwgSW50UmVjdChyLT5s
ZWZ0KCkgLSBsZWZ0T2Zmc2V0LCByLT50b3AoKSAtIHRvcE9mZnNldCwgci0+d2lkdGgoKSwgci0+
aGVpZ2h0KCkpKTsKICAgICAgICAgICAgICAgICBmbG9hdGluZ09iai0+bV9yZW5kZXJlciA9IHIt
Pm1fcmVuZGVyZXI7CiAKICAgICAgICAgICAgICAgICAvLyBUaGUgbmVhcmVzdCBlbmNsb3Npbmcg
bGF5ZXIgYWx3YXlzIHBhaW50cyB0aGUgZmxvYXQgKHNvIHRoYXQgemluZGV4IGFuZCBzdGFja2lu
ZwpAQCAtMzc1NSw3ICszNzU5LDcgQEAgaW50IFJlbmRlckJsb2NrOjphZGRPdmVyaGFuZ2luZ0Zs
b2F0cyhSZQogICAgIHJldHVybiBsb3dlc3RGbG9hdExvZ2ljYWxCb3R0b207CiB9CiAKLXZvaWQg
UmVuZGVyQmxvY2s6OmFkZEludHJ1ZGluZ0Zsb2F0cyhSZW5kZXJCbG9jayogcHJldiwgaW50IHhv
ZmYsIGludCB5b2ZmKQordm9pZCBSZW5kZXJCbG9jazo6YWRkSW50cnVkaW5nRmxvYXRzKFJlbmRl
ckJsb2NrKiBwcmV2LCBpbnQgbG9naWNhbExlZnRPZmZzZXQsIGludCBsb2dpY2FsVG9wT2Zmc2V0
KQogewogICAgIC8vIElmIHRoZSBwYXJlbnQgb3IgcHJldmlvdXMgc2libGluZyBkb2Vzbid0IGhh
dmUgYW55IGZsb2F0cyB0byBhZGQsIGRvbid0IGJvdGhlci4KICAgICBpZiAoIXByZXYtPm1fZmxv
YXRpbmdPYmplY3RzKQpAQCAtMzc2Myw3ICszNzY3LDcgQEAgdm9pZCBSZW5kZXJCbG9jazo6YWRk
SW50cnVkaW5nRmxvYXRzKFJlbgogCiAgICAgRGVwcmVjYXRlZFB0ckxpc3RJdGVyYXRvcjxGbG9h
dGluZ09iamVjdD4gaXQoKnByZXYtPm1fZmxvYXRpbmdPYmplY3RzKTsKICAgICBmb3IgKEZsb2F0
aW5nT2JqZWN0ICpyOyAociA9IGl0LmN1cnJlbnQoKSk7ICsraXQpIHsKLSAgICAgICAgaWYgKHIt
PmJvdHRvbSgpID4geW9mZikgeworICAgICAgICBpZiAobG9naWNhbEJvdHRvbUZvckZsb2F0KHIp
ID4gbG9naWNhbFRvcE9mZnNldCkgewogICAgICAgICAgICAgLy8gVGhlIG9iamVjdCBtYXkgYWxy
ZWFkeSBiZSBpbiBvdXIgbGlzdC4gQ2hlY2sgZm9yIGl0IHVwIGZyb250IHRvIGF2b2lkCiAgICAg
ICAgICAgICAvLyBjcmVhdGluZyBkdXBsaWNhdGUgZW50cmllcy4KICAgICAgICAgICAgIEZsb2F0
aW5nT2JqZWN0KiBmID0gMDsKQEAgLTM3NzUsMTYgKzM3NzksMjEgQEAgdm9pZCBSZW5kZXJCbG9j
azo6YWRkSW50cnVkaW5nRmxvYXRzKFJlbgogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIGlmICghZikgewotICAgICAgICAgICAgICAgIEZsb2F0aW5nT2JqZWN0
KiBmbG9hdGluZ09iaiA9IG5ldyBGbG9hdGluZ09iamVjdChyLT50eXBlKCksIEludFJlY3Qoci0+
bGVmdCgpIC0geG9mZiAtIG1hcmdpbkxlZnQoKSwgci0+dG9wKCkgLSB5b2ZmLCByLT53aWR0aCgp
LCByLT5oZWlnaHQoKSkpOwotCisgICAgICAgICAgICAgICAgbG9naWNhbExlZnRPZmZzZXQgKz0g
c3R5bGUoKS0+aXNWZXJ0aWNhbEJsb2NrRmxvdygpID8gbWFyZ2luTGVmdCgpIDogbWFyZ2luVG9w
KCk7CisgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgLy8gQXBwbHlpbmcgdGhlIGNo
aWxkJ3MgbWFyZ2luIG1ha2VzIG5vIHNlbnNlIGluIHRoZSBjYXNlIHdoZXJlIHRoZSBjaGlsZCB3
YXMgcGFzc2VkIGluLgotICAgICAgICAgICAgICAgIC8vIHNpbmNlIGhpcyBvd24gbWFyZ2luIHdh
cyBhZGRlZCBhbHJlYWR5IHRocm91Z2ggdGhlIHN1YnRyYWN0aW9uIG9mIHRoZSB8eG9mZnwgdmFy
aWFibGUKLSAgICAgICAgICAgICAgICAvLyBhYm92ZS4gIHx4b2ZmfCB3aWxsIGVxdWFsIC1mbG93
LT5tYXJnaW5MZWZ0KCkgaW4gdGhpcyBjYXNlLCBzbyBpdCdzIGFscmVhZHkgYmVlbiB0YWtlbgot
ICAgICAgICAgICAgICAgIC8vIGludG8gYWNjb3VudC4gIE9ubHkgYXBwbHkgdGhpcyBjb2RlIGlm
IHxjaGlsZHwgaXMgZmFsc2UsIHNpbmNlIG90aGVyd2lzZSB0aGUgbGVmdCBtYXJnaW4KKyAgICAg
ICAgICAgICAgICAvLyBzaW5jZSB0aGlzIG1hcmdpbiB3YXMgYWRkZWQgYWxyZWFkeSB0aHJvdWdo
IHRoZSBtb2RpZmljYXRpb24gb2YgdGhlIHxsb2dpY2FsTGVmdE9mZnNldHwgdmFyaWFibGUKKyAg
ICAgICAgICAgICAgICAvLyBhYm92ZS4gIHxsb2dpY2FsTGVmdE9mZnNldHwgd2lsbCBlcXVhbCB0
aGUgbWFyZ2luIGluIHRoaXMgY2FzZSwgc28gaXQncyBhbHJlYWR5IGJlZW4gdGFrZW4KKyAgICAg
ICAgICAgICAgICAvLyBpbnRvIGFjY291bnQuICBPbmx5IGFwcGx5IHRoaXMgY29kZSBpZiBwcmV2
IGlzIHRoZSBwYXJlbnQsIHNpbmNlIG90aGVyd2lzZSB0aGUgbGVmdCBtYXJnaW4KICAgICAgICAg
ICAgICAgICAvLyB3aWxsIGdldCBhcHBsaWVkIHR3aWNlLgogICAgICAgICAgICAgICAgIGlmIChw
cmV2ICE9IHBhcmVudCgpKQotICAgICAgICAgICAgICAgICAgICBmbG9hdGluZ09iai0+c2V0TGVm
dChmbG9hdGluZ09iai0+bGVmdCgpICsgcHJldi0+bWFyZ2luTGVmdCgpKTsKKyAgICAgICAgICAg
ICAgICAgICAgbG9naWNhbExlZnRPZmZzZXQgLT0gc3R5bGUoKS0+aXNWZXJ0aWNhbEJsb2NrRmxv
dygpID8gcHJldi0+bWFyZ2luTGVmdCgpIDogcHJldi0+bWFyZ2luVG9wKCk7CisgICAgICAgICAg
ICAgICAgCisgICAgICAgICAgICAgICAgaW50IGxlZnRPZmZzZXQgPSBzdHlsZSgpLT5pc1ZlcnRp
Y2FsQmxvY2tGbG93KCkgPyBsb2dpY2FsTGVmdE9mZnNldCA6IGxvZ2ljYWxUb3BPZmZzZXQ7Cisg
ICAgICAgICAgICAgICAgaW50IHRvcE9mZnNldCA9IHN0eWxlKCktPmlzVmVydGljYWxCbG9ja0Zs
b3coKSA/IGxvZ2ljYWxUb3BPZmZzZXQgOiBsb2dpY2FsTGVmdE9mZnNldDsKICAgICAgICAgICAg
ICAgICAKKyAgICAgICAgICAgICAgICBGbG9hdGluZ09iamVjdCogZmxvYXRpbmdPYmogPSBuZXcg
RmxvYXRpbmdPYmplY3Qoci0+dHlwZSgpLCBJbnRSZWN0KHItPmxlZnQoKSAtIGxlZnRPZmZzZXQs
IHItPnRvcCgpIC0gdG9wT2Zmc2V0LCByLT53aWR0aCgpLCByLT5oZWlnaHQoKSkpOworCiAgICAg
ICAgICAgICAgICAgZmxvYXRpbmdPYmotPm1fc2hvdWxkUGFpbnQgPSBmYWxzZTsgIC8vIFdlIGFy
ZSBub3QgaW4gdGhlIGRpcmVjdCBpbmhlcml0YW5jZSBjaGFpbiBmb3IgdGhpcyBmbG9hdC4gV2Ug
d2lsbCBuZXZlciBwYWludCBpdC4KICAgICAgICAgICAgICAgICBmbG9hdGluZ09iai0+bV9yZW5k
ZXJlciA9IHItPm1fcmVuZGVyZXI7CiAgICAgICAgICAgICAgICAgCkluZGV4OiBXZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCbG9jay5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmgJKHJldmlzaW9uIDY5MDI1KQorKysgV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
QmxvY2suaAkod29ya2luZyBjb3B5KQpAQCAtMzYxLDE5ICszNjEsMzMgQEAgcHJpdmF0ZToKICAg
ICBzdHJ1Y3QgRmxvYXRpbmdPYmplY3QgOiBOb25jb3B5YWJsZSB7CiAgICAgICAgIC8vIE5vdGUg
dGhhdCBUeXBlIHVzZXMgYml0cyBzbyB5b3UgY2FuIHVzZSBGbG9hdEJvdGggYXMgYSBtYXNrIHRv
IHF1ZXJ5IGZvciBib3RoIGxlZnQgYW5kIHJpZ2h0LgogICAgICAgICBlbnVtIFR5cGUgeyBGbG9h
dExlZnQgPSAxLCBGbG9hdFJpZ2h0ID0gMiwgRmxvYXRCb3RoID0gMyB9OwotICAgIAotICAgICAg
ICBGbG9hdGluZ09iamVjdChUeXBlIHR5cGUsIGNvbnN0IEludFJlY3QmIGZyYW1lUmVjdCA9IElu
dFJlY3QoKSkKKworICAgICAgICBGbG9hdGluZ09iamVjdChUeXBlIHR5cGUpCisgICAgICAgICAg
ICA6IG1fcmVuZGVyZXIoMCkKKyAgICAgICAgICAgICwgbV9wYWdpbmF0aW9uU3RydXQoMCkKKyAg
ICAgICAgICAgICwgbV90eXBlKHR5cGUpCisgICAgICAgICAgICAsIG1fc2hvdWxkUGFpbnQodHJ1
ZSkKKyAgICAgICAgICAgICwgbV9pc0Rlc2NlbmRhbnQoZmFsc2UpCisgICAgICAgICAgICAsIG1f
aXNQbGFjZWQoZmFsc2UpCisgICAgICAgIHsKKyAgICAgICAgfQorCisgICAgICAgIEZsb2F0aW5n
T2JqZWN0KFR5cGUgdHlwZSwgY29uc3QgSW50UmVjdCYgZnJhbWVSZWN0KQogICAgICAgICAgICAg
OiBtX3JlbmRlcmVyKDApCiAgICAgICAgICAgICAsIG1fZnJhbWVSZWN0KGZyYW1lUmVjdCkKICAg
ICAgICAgICAgICwgbV9wYWdpbmF0aW9uU3RydXQoMCkKICAgICAgICAgICAgICwgbV90eXBlKHR5
cGUpCiAgICAgICAgICAgICAsIG1fc2hvdWxkUGFpbnQodHJ1ZSkKICAgICAgICAgICAgICwgbV9p
c0Rlc2NlbmRhbnQoZmFsc2UpCisgICAgICAgICAgICAsIG1faXNQbGFjZWQodHJ1ZSkKICAgICAg
ICAgewogICAgICAgICB9CiAKICAgICAgICAgVHlwZSB0eXBlKCkgeyByZXR1cm4gc3RhdGljX2Nh
c3Q8VHlwZT4obV90eXBlKTsgfQogCisgICAgICAgIGJvb2wgaXNQbGFjZWQoKSBjb25zdCB7IHJl
dHVybiBtX2lzUGxhY2VkOyB9CisgICAgICAgIHZvaWQgc2V0SXNQbGFjZWQoYm9vbCBwbGFjZWQg
PSB0cnVlKSB7IG1faXNQbGFjZWQgPSBwbGFjZWQ7IH0KKwogICAgICAgICBpbnQgbGVmdCgpIGNv
bnN0IHsgcmV0dXJuIG1fZnJhbWVSZWN0LngoKTsgfQogICAgICAgICBpbnQgcmlnaHQoKSBjb25z
dCB7IHJldHVybiBtX2ZyYW1lUmVjdC5yaWdodCgpOyB9CiAgICAgICAgIGludCB0b3AoKSBjb25z
dCB7IHJldHVybiBtX2ZyYW1lUmVjdC55KCk7IH0KQEAgLTM5NSw2ICs0MDksNyBAQCBwcml2YXRl
OgogICAgICAgICB1bnNpZ25lZCBtX3R5cGUgOiAyOyAvLyBUeXBlIChsZWZ0IG9yIHJpZ2h0IGFs
aWduZWQpCiAgICAgICAgIGJvb2wgbV9zaG91bGRQYWludCA6IDE7CiAgICAgICAgIGJvb2wgbV9p
c0Rlc2NlbmRhbnQgOiAxOworICAgICAgICBib29sIG1faXNQbGFjZWQgOiAxOwogICAgIH07CiAK
ICAgICBpbnQgbG9naWNhbFRvcEZvckZsb2F0KEZsb2F0aW5nT2JqZWN0KiBjaGlsZCkgY29uc3Qg
eyByZXR1cm4gc3R5bGUoKS0+aXNWZXJ0aWNhbEJsb2NrRmxvdygpID8gY2hpbGQtPnRvcCgpIDog
Y2hpbGQtPmxlZnQoKTsgfQpAQCAtNTE0LDcgKzUyOSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBh
ZGp1c3RQb2ludFRvQ29sdW1uQ29udGVudHMoSW50UG9pbnQmKSBjb25zdDsKICAgICB2b2lkIGFk
anVzdEZvckJvcmRlckZpdChpbnQgeCwgaW50JiBsZWZ0LCBpbnQmIHJpZ2h0KSBjb25zdDsgLy8g
SGVscGVyIGZ1bmN0aW9uIGZvciBib3JkZXJGaXRBZGp1c3QKIAotICAgIHZvaWQgbWFya0xpbmVz
RGlydHlJblZlcnRpY2FsUmFuZ2UoaW50IHRvcCwgaW50IGJvdHRvbSwgUm9vdElubGluZUJveCog
aGlnaGVzdCA9IDApOworICAgIHZvaWQgbWFya0xpbmVzRGlydHlJbkJsb2NrUmFuZ2UoaW50IGxv
Z2ljYWxUb3AsIGludCBsb2dpY2FsVG9wLCBSb290SW5saW5lQm94KiBoaWdoZXN0ID0gMCk7CiAK
ICAgICB2b2lkIG5ld0xpbmUoRUNsZWFyKTsKIApJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQmxvY2tMaW5lTGF5b3V0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCbG9ja0xpbmVMYXlvdXQuY3BwCShyZXZpc2lvbiA2OTAxOSkKKysrIFdlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk1OSw3
ICs5NTksNyBAQCBSb290SW5saW5lQm94KiBSZW5kZXJCbG9jazo6ZGV0ZXJtaW5lU3RhCiAgICAg
ICAgICAgICAgICAgICAgIGlmIChmbG9hdHNbZmxvYXRJbmRleF0ucmVjdC5zaXplKCkgIT0gbmV3
U2l6ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IGZsb2F0VG9wID0gZmxvYXRzW2Zs
b2F0SW5kZXhdLnJlY3QueSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgY3Vyci0+bWFya0Rp
cnR5KCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBtYXJrTGluZXNEaXJ0eUluVmVydGljYWxS
YW5nZShjdXJyLT5ibG9ja0hlaWdodCgpLCBmbG9hdFRvcCArIG1heChmbG9hdHNbZmxvYXRJbmRl
eF0ucmVjdC5oZWlnaHQoKSwgbmV3U2l6ZS5oZWlnaHQoKSksIGN1cnIpOworICAgICAgICAgICAg
ICAgICAgICAgICAgbWFya0xpbmVzRGlydHlJbkJsb2NrUmFuZ2UoY3Vyci0+YmxvY2tIZWlnaHQo
KSwgZmxvYXRUb3AgKyBtYXgoZmxvYXRzW2Zsb2F0SW5kZXhdLnJlY3QuaGVpZ2h0KCksIG5ld1Np
emUuaGVpZ2h0KCkpLCBjdXJyKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0c1tmbG9h
dEluZGV4XS5yZWN0LnNldFNpemUobmV3U2l6ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBk
aXJ0aWVkQnlGbG9hdCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgIH0K
</data>
<flag name="review"
          id="59413"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>