<?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>104112</bug_id>
          
          <creation_ts>2012-12-05 04:09:57 -0800</creation_ts>
          <short_desc>Use always the order iterator from data member in RenderFlexibleBox</short_desc>
          <delta_ts>2012-12-07 05:58:16 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>104109</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>darin</cc>
    
    <cc>ojan</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>783631</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-12-05 04:09:57 -0800</bug_when>
    <thetext>Some methods receive it as parameter and others use the data member.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783634</commentid>
    <comment_count>1</comment_count>
      <attachid>177724</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-12-05 04:14:18 -0800</bug_when>
    <thetext>Created attachment 177724
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783636</commentid>
    <comment_count>2</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-12-05 04:14:52 -0800</bug_when>
    <thetext>This patch applies on top of patch attached to bug #104109</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783972</commentid>
    <comment_count>3</comment_count>
      <attachid>177724</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-12-05 12:12:26 -0800</bug_when>
    <thetext>Comment on attachment 177724
Patch

We should also consider making m_orderIterator stack allocated.  We would have to adjust how we initialize it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785756</commentid>
    <comment_count>4</comment_count>
      <attachid>177724</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-12-07 01:59:03 -0800</bug_when>
    <thetext>Comment on attachment 177724
Patch

Committed r136938 &lt;http://trac.webkit.org/changeset/136938&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785839</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-12-07 05:58:16 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 177724 [details])
&gt; We should also consider making m_orderIterator stack allocated.  We would have to adjust how we initialize it.

Yes, and we also need to make some methods that use the iterator non-const, see:

https://bugs.webkit.org/show_bug.cgi?id=104366</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>177724</attachid>
            <date>2012-12-05 04:14:18 -0800</date>
            <delta_ts>2012-12-07 01:59:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wcore-flexbox-iterator.diff</filename>
            <type>text/plain</type>
            <size>15494</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNDFkMWMwLi42NWMzNGYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjYg
QEAKIDIwMTItMTItMDUgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgogCisgICAgICAgIFVzZSBhbHdheXMgdGhlIG9yZGVyIGl0ZXJhdG9yIGZyb20gZGF0YSBtZW1i
ZXIgaW4gUmVuZGVyRmxleGlibGVCb3gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEwNDExMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFNvbWUgbWV0aG9kcyByZWNlaXZlIGl0IGFzIHBhcmFtZXRlciBhbmQg
b3RoZXJzIHVzZSB0aGUgZGF0YQorICAgICAgICBtZW1iZXIuCisKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyRmxleGlibGVCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGli
bGVCb3g6OmxheW91dEJsb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94
OjpyZXBvc2l0aW9uTG9naWNhbEhlaWdodERlcGVuZGVudEZsZXhJdGVtcyk6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0RmxleEl0ZW1zKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckZsZXhpYmxlQm94Ojpjb21wdXRlTmV4dEZsZXhMaW5lKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94OjphbGlnbkZsZXhMaW5lcyk6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6YWxpZ25DaGlsZHJlbik6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6ZmxpcEZvclJpZ2h0VG9MZWZ0Q29sdW1uKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94OjpmbGlwRm9yV3JhcFJldmVyc2UpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oOgorCisyMDEyLTEyLTA1ICBDYXJs
b3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKwogICAgICAgICBGbGV4IGl0
ZW0gYXV0byBtYXJnaW5zIGluIHRoZSBjcm9zcyBkaXJlY3Rpb24gc2hvdWxkIHNhZmUgY2VudGVy
CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM5MTkK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAKaW5k
ZXggZWI0YzU2Yy4uMjcwMmU1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckZsZXhpYmxlQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyRmxleGlibGVCb3guY3BwCkBAIC0zMzUsMTEgKzMzNSwxMSBAQCB2b2lkIFJlbmRlckZsZXhp
YmxlQm94OjpsYXlvdXRCbG9jayhib29sIHJlbGF5b3V0Q2hpbGRyZW4sIExheW91dFVuaXQpCiAK
ICAgICBDaGlsZEZyYW1lUmVjdHMgb2xkQ2hpbGRSZWN0czsKICAgICBhcHBlbmRDaGlsZEZyYW1l
UmVjdHMob2xkQ2hpbGRSZWN0cyk7Ci0gICAgbGF5b3V0RmxleEl0ZW1zKCptX29yZGVySXRlcmF0
b3IsIGxpbmVDb250ZXh0cyk7CisgICAgbGF5b3V0RmxleEl0ZW1zKGxpbmVDb250ZXh0cyk7CiAK
ICAgICBMYXlvdXRVbml0IG9sZENsaWVudEFmdGVyRWRnZSA9IGNsaWVudExvZ2ljYWxCb3R0b20o
KTsKICAgICB1cGRhdGVMb2dpY2FsSGVpZ2h0KCk7Ci0gICAgcmVwb3NpdGlvbkxvZ2ljYWxIZWln
aHREZXBlbmRlbnRGbGV4SXRlbXMoKm1fb3JkZXJJdGVyYXRvciwgbGluZUNvbnRleHRzLCBvbGRD
bGllbnRBZnRlckVkZ2UpOworICAgIHJlcG9zaXRpb25Mb2dpY2FsSGVpZ2h0RGVwZW5kZW50Rmxl
eEl0ZW1zKGxpbmVDb250ZXh0cywgb2xkQ2xpZW50QWZ0ZXJFZGdlKTsKIAogICAgIFJlbmRlckJs
b2NrOjpmaW5pc2hEZWxheVVwZGF0ZVNjcm9sbEluZm8oKTsKIApAQCAtNDA2LDI1ICs0MDYsMjUg
QEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6cGFpbnRDaGlsZHJlbihQYWludEluZm8mIHBhaW50
SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHAKICAgICB9CiB9CiAKLXZvaWQgUmVuZGVyRmxleGli
bGVCb3g6OnJlcG9zaXRpb25Mb2dpY2FsSGVpZ2h0RGVwZW5kZW50RmxleEl0ZW1zKE9yZGVySXRl
cmF0b3ImIGl0ZXJhdG9yLCBWZWN0b3I8TGluZUNvbnRleHQ+JiBsaW5lQ29udGV4dHMsIExheW91
dFVuaXQmIG9sZENsaWVudEFmdGVyRWRnZSkKK3ZvaWQgUmVuZGVyRmxleGlibGVCb3g6OnJlcG9z
aXRpb25Mb2dpY2FsSGVpZ2h0RGVwZW5kZW50RmxleEl0ZW1zKFZlY3RvcjxMaW5lQ29udGV4dD4m
IGxpbmVDb250ZXh0cywgTGF5b3V0VW5pdCYgb2xkQ2xpZW50QWZ0ZXJFZGdlKQogewogICAgIExh
eW91dFVuaXQgY3Jvc3NBeGlzU3RhcnRFZGdlID0gbGluZUNvbnRleHRzLmlzRW1wdHkoKSA/IExh
eW91dFVuaXQoKSA6IGxpbmVDb250ZXh0c1swXS5jcm9zc0F4aXNPZmZzZXQ7Ci0gICAgYWxpZ25G
bGV4TGluZXMoaXRlcmF0b3IsIGxpbmVDb250ZXh0cyk7CisgICAgYWxpZ25GbGV4TGluZXMobGlu
ZUNvbnRleHRzKTsKIAogICAgIC8vIElmIHdlIGhhdmUgYSBzaW5nbGUgbGluZSBmbGV4Ym94LCB0
aGUgbGluZSBoZWlnaHQgaXMgYWxsIHRoZSBhdmFpbGFibGUgc3BhY2UuCiAgICAgLy8gRm9yIGZs
ZXgtZGlyZWN0aW9uOiByb3csIHRoaXMgbWVhbnMgd2UgbmVlZCB0byB1c2UgdGhlIGhlaWdodCwg
c28gd2UgZG8gdGhpcyBhZnRlciBjYWxsaW5nIHVwZGF0ZUxvZ2ljYWxIZWlnaHQuCiAgICAgaWYg
KCFpc011bHRpbGluZSgpICYmIGxpbmVDb250ZXh0cy5zaXplKCkgPT0gMSkKICAgICAgICAgbGlu
ZUNvbnRleHRzWzBdLmNyb3NzQXhpc0V4dGVudCA9IGNyb3NzQXhpc0NvbnRlbnRFeHRlbnQoKTsK
LSAgICBhbGlnbkNoaWxkcmVuKGl0ZXJhdG9yLCBsaW5lQ29udGV4dHMpOworICAgIGFsaWduQ2hp
bGRyZW4obGluZUNvbnRleHRzKTsKIAogICAgIGlmIChzdHlsZSgpLT5mbGV4V3JhcCgpID09IEZs
ZXhXcmFwUmV2ZXJzZSkgewogICAgICAgICBpZiAoaXNIb3Jpem9udGFsRmxvdygpKQogICAgICAg
ICAgICAgb2xkQ2xpZW50QWZ0ZXJFZGdlID0gY2xpZW50TG9naWNhbEJvdHRvbSgpOwotICAgICAg
ICBmbGlwRm9yV3JhcFJldmVyc2UoaXRlcmF0b3IsIGxpbmVDb250ZXh0cywgY3Jvc3NBeGlzU3Rh
cnRFZGdlKTsKKyAgICAgICAgZmxpcEZvcldyYXBSZXZlcnNlKGxpbmVDb250ZXh0cywgY3Jvc3NB
eGlzU3RhcnRFZGdlKTsKICAgICB9CiAKICAgICAvLyBkaXJlY3Rpb246cnRsICsgZmxleC1kaXJl
Y3Rpb246Y29sdW1uIG1lYW5zIHRoZSBjcm9zcy1heGlzIGRpcmVjdGlvbiBpcyBmbGlwcGVkLgot
ICAgIGZsaXBGb3JSaWdodFRvTGVmdENvbHVtbihpdGVyYXRvcik7CisgICAgZmxpcEZvclJpZ2h0
VG9MZWZ0Q29sdW1uKCk7CiB9CiAKIHZvaWQgUmVuZGVyRmxleGlibGVCb3g6OmNsZWFyQ2hpbGRP
dmVycmlkZVNpemVzKCkKQEAgLTcyMywxNyArNzIzLDE5IEBAIExheW91dFVuaXQgUmVuZGVyRmxl
eGlibGVCb3g6OnByZWZlcnJlZE1haW5BeGlzQ29udGVudEV4dGVudEZvckNoaWxkKFJlbmRlckJv
eCoKICAgICByZXR1cm4gc3RkOjptYXgoTGF5b3V0VW5pdCgwKSwgY29tcHV0ZU1haW5BeGlzRXh0
ZW50Rm9yQ2hpbGQoY2hpbGQsIE1haW5PclByZWZlcnJlZFNpemUsIGZsZXhCYXNpcykpOwogfQog
Ci12b2lkIFJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRGbGV4SXRlbXMoT3JkZXJJdGVyYXRvciYg
aXRlcmF0b3IsIFZlY3RvcjxMaW5lQ29udGV4dD4mIGxpbmVDb250ZXh0cykKK3ZvaWQgUmVuZGVy
RmxleGlibGVCb3g6OmxheW91dEZsZXhJdGVtcyhWZWN0b3I8TGluZUNvbnRleHQ+JiBsaW5lQ29u
dGV4dHMpCiB7CisgICAgQVNTRVJUKG1fb3JkZXJJdGVyYXRvcik7CisKICAgICBPcmRlcmVkRmxl
eEl0ZW1MaXN0IG9yZGVyZWRDaGlsZHJlbjsKICAgICBMYXlvdXRVbml0IHByZWZlcnJlZE1haW5B
eGlzRXh0ZW50OwogICAgIGRvdWJsZSB0b3RhbEZsZXhHcm93OwogICAgIGRvdWJsZSB0b3RhbFdl
aWdodGVkRmxleFNocmluazsKICAgICBMYXlvdXRVbml0IG1pbk1heEFwcGxpZWRNYWluQXhpc0V4
dGVudDsKIAotICAgIGl0ZXJhdG9yLmZpcnN0KCk7CisgICAgbV9vcmRlckl0ZXJhdG9yLT5maXJz
dCgpOwogICAgIExheW91dFVuaXQgY3Jvc3NBeGlzT2Zmc2V0ID0gZmxvd0F3YXJlQm9yZGVyQmVm
b3JlKCkgKyBmbG93QXdhcmVQYWRkaW5nQmVmb3JlKCk7Ci0gICAgd2hpbGUgKGNvbXB1dGVOZXh0
RmxleExpbmUoaXRlcmF0b3IsIG9yZGVyZWRDaGlsZHJlbiwgcHJlZmVycmVkTWFpbkF4aXNFeHRl
bnQsIHRvdGFsRmxleEdyb3csIHRvdGFsV2VpZ2h0ZWRGbGV4U2hyaW5rLCBtaW5NYXhBcHBsaWVk
TWFpbkF4aXNFeHRlbnQpKSB7CisgICAgd2hpbGUgKGNvbXB1dGVOZXh0RmxleExpbmUob3JkZXJl
ZENoaWxkcmVuLCBwcmVmZXJyZWRNYWluQXhpc0V4dGVudCwgdG90YWxGbGV4R3JvdywgdG90YWxX
ZWlnaHRlZEZsZXhTaHJpbmssIG1pbk1heEFwcGxpZWRNYWluQXhpc0V4dGVudCkpIHsKICAgICAg
ICAgTGF5b3V0VW5pdCBhdmFpbGFibGVGcmVlU3BhY2UgPSBtYWluQXhpc0NvbnRlbnRFeHRlbnQo
cHJlZmVycmVkTWFpbkF4aXNFeHRlbnQpIC0gcHJlZmVycmVkTWFpbkF4aXNFeHRlbnQ7CiAgICAg
ICAgIEZsZXhTaWduIGZsZXhTaWduID0gKG1pbk1heEFwcGxpZWRNYWluQXhpc0V4dGVudCA8IHBy
ZWZlcnJlZE1haW5BeGlzRXh0ZW50ICsgYXZhaWxhYmxlRnJlZVNwYWNlKSA/IFBvc2l0aXZlRmxl
eGliaWxpdHkgOiBOZWdhdGl2ZUZsZXhpYmlsaXR5OwogICAgICAgICBJbmZsZXhpYmxlRmxleEl0
ZW1TaXplIGluZmxleGlibGVJdGVtczsKQEAgLTkxMiwyMCArOTE0LDIyIEBAIExheW91dFVuaXQg
UmVuZGVyRmxleGlibGVCb3g6OmFkanVzdENoaWxkU2l6ZUZvck1pbkFuZE1heChSZW5kZXJCb3gq
IGNoaWxkLCBMYXlvCiAgICAgcmV0dXJuIHN0ZDo6bWF4KGNoaWxkU2l6ZSwgbWluRXh0ZW50KTsK
IH0KIAotYm9vbCBSZW5kZXJGbGV4aWJsZUJveDo6Y29tcHV0ZU5leHRGbGV4TGluZShPcmRlckl0
ZXJhdG9yJiBpdGVyYXRvciwgT3JkZXJlZEZsZXhJdGVtTGlzdCYgb3JkZXJlZENoaWxkcmVuLCBM
YXlvdXRVbml0JiBwcmVmZXJyZWRNYWluQXhpc0V4dGVudCwgZG91YmxlJiB0b3RhbEZsZXhHcm93
LCBkb3VibGUmIHRvdGFsV2VpZ2h0ZWRGbGV4U2hyaW5rLCBMYXlvdXRVbml0JiBtaW5NYXhBcHBs
aWVkTWFpbkF4aXNFeHRlbnQpCitib29sIFJlbmRlckZsZXhpYmxlQm94Ojpjb21wdXRlTmV4dEZs
ZXhMaW5lKE9yZGVyZWRGbGV4SXRlbUxpc3QmIG9yZGVyZWRDaGlsZHJlbiwgTGF5b3V0VW5pdCYg
cHJlZmVycmVkTWFpbkF4aXNFeHRlbnQsIGRvdWJsZSYgdG90YWxGbGV4R3JvdywgZG91YmxlJiB0
b3RhbFdlaWdodGVkRmxleFNocmluaywgTGF5b3V0VW5pdCYgbWluTWF4QXBwbGllZE1haW5BeGlz
RXh0ZW50KQogeworICAgIEFTU0VSVChtX29yZGVySXRlcmF0b3IpOworCiAgICAgb3JkZXJlZENo
aWxkcmVuLmNsZWFyKCk7CiAgICAgcHJlZmVycmVkTWFpbkF4aXNFeHRlbnQgPSAwOwogICAgIHRv
dGFsRmxleEdyb3cgPSB0b3RhbFdlaWdodGVkRmxleFNocmluayA9IDA7CiAgICAgbWluTWF4QXBw
bGllZE1haW5BeGlzRXh0ZW50ID0gMDsKIAotICAgIGlmICghaXRlcmF0b3IuY3VycmVudENoaWxk
KCkpCisgICAgaWYgKCFtX29yZGVySXRlcmF0b3ItPmN1cnJlbnRDaGlsZCgpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICBMYXlvdXRVbml0IGxpbmVCcmVha0xlbmd0aCA9IG1haW5BeGlz
Q29udGVudEV4dGVudChMYXlvdXRVbml0OjptYXgoKSk7CiAgICAgYm9vbCBsaW5lSGFzSW5GbG93
SXRlbSA9IGZhbHNlOwogCi0gICAgZm9yIChSZW5kZXJCb3gqIGNoaWxkID0gaXRlcmF0b3IuY3Vy
cmVudENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGl0ZXJhdG9yLm5leHQoKSkgeworICAgIGZvciAo
UmVuZGVyQm94KiBjaGlsZCA9IG1fb3JkZXJJdGVyYXRvci0+Y3VycmVudENoaWxkKCk7IGNoaWxk
OyBjaGlsZCA9IG1fb3JkZXJJdGVyYXRvci0+bmV4dCgpKSB7CiAgICAgICAgIGlmIChjaGlsZC0+
aXNPdXRPZkZsb3dQb3NpdGlvbmVkKCkpIHsKICAgICAgICAgICAgIG9yZGVyZWRDaGlsZHJlbi5h
cHBlbmQoY2hpbGQpOwogICAgICAgICAgICAgY29udGludWU7CkBAIC0xMjQxLDggKzEyNDUsMTAg
QEAgc3RhdGljIExheW91dFVuaXQgYWxpZ25Db250ZW50U3BhY2VCZXR3ZWVuQ2hpbGRyZW4oTGF5
b3V0VW5pdCBhdmFpbGFibGVGcmVlU3BhY2UKICAgICByZXR1cm4gMDsKIH0KIAotdm9pZCBSZW5k
ZXJGbGV4aWJsZUJveDo6YWxpZ25GbGV4TGluZXMoT3JkZXJJdGVyYXRvciYgaXRlcmF0b3IsIFZl
Y3RvcjxMaW5lQ29udGV4dD4mIGxpbmVDb250ZXh0cykKK3ZvaWQgUmVuZGVyRmxleGlibGVCb3g6
OmFsaWduRmxleExpbmVzKFZlY3RvcjxMaW5lQ29udGV4dD4mIGxpbmVDb250ZXh0cykKIHsKKyAg
ICBBU1NFUlQobV9vcmRlckl0ZXJhdG9yKTsKKwogICAgIGlmICghaXNNdWx0aWxpbmUoKSB8fCBz
dHlsZSgpLT5hbGlnbkNvbnRlbnQoKSA9PSBBbGlnbkNvbnRlbnRGbGV4U3RhcnQpCiAgICAgICAg
IHJldHVybjsKIApAQCAtMTI1MCwxMSArMTI1NiwxMSBAQCB2b2lkIFJlbmRlckZsZXhpYmxlQm94
OjphbGlnbkZsZXhMaW5lcyhPcmRlckl0ZXJhdG9yJiBpdGVyYXRvciwgVmVjdG9yPExpbmVDb250
ZQogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGluZUNvbnRleHRzLnNpemUoKTsgKytpKQog
ICAgICAgICBhdmFpbGFibGVDcm9zc0F4aXNTcGFjZSAtPSBsaW5lQ29udGV4dHNbaV0uY3Jvc3NB
eGlzRXh0ZW50OwogCi0gICAgUmVuZGVyQm94KiBjaGlsZCA9IGl0ZXJhdG9yLmZpcnN0KCk7Cisg
ICAgUmVuZGVyQm94KiBjaGlsZCA9IG1fb3JkZXJJdGVyYXRvci0+Zmlyc3QoKTsKICAgICBMYXlv
dXRVbml0IGxpbmVPZmZzZXQgPSBpbml0aWFsQWxpZ25Db250ZW50T2Zmc2V0KGF2YWlsYWJsZUNy
b3NzQXhpc1NwYWNlLCBzdHlsZSgpLT5hbGlnbkNvbnRlbnQoKSwgbGluZUNvbnRleHRzLnNpemUo
KSk7CiAgICAgZm9yICh1bnNpZ25lZCBsaW5lTnVtYmVyID0gMDsgbGluZU51bWJlciA8IGxpbmVD
b250ZXh0cy5zaXplKCk7ICsrbGluZU51bWJlcikgewogICAgICAgICBsaW5lQ29udGV4dHNbbGlu
ZU51bWJlcl0uY3Jvc3NBeGlzT2Zmc2V0ICs9IGxpbmVPZmZzZXQ7Ci0gICAgICAgIGZvciAoc2l6
ZV90IGNoaWxkTnVtYmVyID0gMDsgY2hpbGROdW1iZXIgPCBsaW5lQ29udGV4dHNbbGluZU51bWJl
cl0ubnVtYmVyT2ZDaGlsZHJlbjsgKytjaGlsZE51bWJlciwgY2hpbGQgPSBpdGVyYXRvci5uZXh0
KCkpCisgICAgICAgIGZvciAoc2l6ZV90IGNoaWxkTnVtYmVyID0gMDsgY2hpbGROdW1iZXIgPCBs
aW5lQ29udGV4dHNbbGluZU51bWJlcl0ubnVtYmVyT2ZDaGlsZHJlbjsgKytjaGlsZE51bWJlciwg
Y2hpbGQgPSBtX29yZGVySXRlcmF0b3ItPm5leHQoKSkKICAgICAgICAgICAgIGFkanVzdEFsaWdu
bWVudEZvckNoaWxkKGNoaWxkLCBsaW5lT2Zmc2V0KTsKIAogICAgICAgICBpZiAoc3R5bGUoKS0+
YWxpZ25Db250ZW50KCkgPT0gQWxpZ25Db250ZW50U3RyZXRjaCAmJiBhdmFpbGFibGVDcm9zc0F4
aXNTcGFjZSA+IDApCkBAIC0xMjc5LDE4ICsxMjg1LDIwIEBAIHZvaWQgUmVuZGVyRmxleGlibGVC
b3g6OmFkanVzdEFsaWdubWVudEZvckNoaWxkKFJlbmRlckJveCogY2hpbGQsIExheW91dFVuaXQg
ZGVsCiAgICAgc2V0Rmxvd0F3YXJlTG9jYXRpb25Gb3JDaGlsZChjaGlsZCwgZmxvd0F3YXJlTG9j
YXRpb25Gb3JDaGlsZChjaGlsZCkgKyBMYXlvdXRTaXplKDAsIGRlbHRhKSk7CiB9CiAKLXZvaWQg
UmVuZGVyRmxleGlibGVCb3g6OmFsaWduQ2hpbGRyZW4oT3JkZXJJdGVyYXRvciYgaXRlcmF0b3Is
IGNvbnN0IFZlY3RvcjxMaW5lQ29udGV4dD4mIGxpbmVDb250ZXh0cykKK3ZvaWQgUmVuZGVyRmxl
eGlibGVCb3g6OmFsaWduQ2hpbGRyZW4oY29uc3QgVmVjdG9yPExpbmVDb250ZXh0PiYgbGluZUNv
bnRleHRzKQogeworICAgIEFTU0VSVChtX29yZGVySXRlcmF0b3IpOworCiAgICAgLy8gS2VlcCB0
cmFjayBvZiB0aGUgc3BhY2UgYmV0d2VlbiB0aGUgYmFzZWxpbmUgZWRnZSBhbmQgdGhlIGFmdGVy
IGVkZ2Ugb2YgdGhlIGJveCBmb3IgZWFjaCBsaW5lLgogICAgIFZlY3RvcjxMYXlvdXRVbml0PiBt
aW5NYXJnaW5BZnRlckJhc2VsaW5lczsKIAotICAgIFJlbmRlckJveCogY2hpbGQgPSBpdGVyYXRv
ci5maXJzdCgpOworICAgIFJlbmRlckJveCogY2hpbGQgPSBtX29yZGVySXRlcmF0b3ItPmZpcnN0
KCk7CiAgICAgZm9yIChzaXplX3QgbGluZU51bWJlciA9IDA7IGxpbmVOdW1iZXIgPCBsaW5lQ29u
dGV4dHMuc2l6ZSgpOyArK2xpbmVOdW1iZXIpIHsKICAgICAgICAgTGF5b3V0VW5pdCBtaW5NYXJn
aW5BZnRlckJhc2VsaW5lID0gTGF5b3V0VW5pdDo6bWF4KCk7CiAgICAgICAgIExheW91dFVuaXQg
bGluZUNyb3NzQXhpc0V4dGVudCA9IGxpbmVDb250ZXh0c1tsaW5lTnVtYmVyXS5jcm9zc0F4aXNF
eHRlbnQ7CiAgICAgICAgIExheW91dFVuaXQgbWF4QXNjZW50ID0gbGluZUNvbnRleHRzW2xpbmVO
dW1iZXJdLm1heEFzY2VudDsKIAotICAgICAgICBmb3IgKHNpemVfdCBjaGlsZE51bWJlciA9IDA7
IGNoaWxkTnVtYmVyIDwgbGluZUNvbnRleHRzW2xpbmVOdW1iZXJdLm51bWJlck9mQ2hpbGRyZW47
ICsrY2hpbGROdW1iZXIsIGNoaWxkID0gaXRlcmF0b3IubmV4dCgpKSB7CisgICAgICAgIGZvciAo
c2l6ZV90IGNoaWxkTnVtYmVyID0gMDsgY2hpbGROdW1iZXIgPCBsaW5lQ29udGV4dHNbbGluZU51
bWJlcl0ubnVtYmVyT2ZDaGlsZHJlbjsgKytjaGlsZE51bWJlciwgY2hpbGQgPSBtX29yZGVySXRl
cmF0b3ItPm5leHQoKSkgewogICAgICAgICAgICAgQVNTRVJUKGNoaWxkKTsKICAgICAgICAgICAg
IGlmIChjaGlsZC0+aXNPdXRPZkZsb3dQb3NpdGlvbmVkKCkpIHsKICAgICAgICAgICAgICAgICBp
ZiAoc3R5bGUoKS0+ZmxleFdyYXAoKSA9PSBGbGV4V3JhcFJldmVyc2UpCkBAIC0xMzQxLDEwICsx
MzQ5LDEwIEBAIHZvaWQgUmVuZGVyRmxleGlibGVCb3g6OmFsaWduQ2hpbGRyZW4oT3JkZXJJdGVy
YXRvciYgaXRlcmF0b3IsIGNvbnN0IFZlY3RvcjxMaW5lCiAKICAgICAvLyB3cmFwLXJldmVyc2Ug
ZmxpcHMgdGhlIGNyb3NzIGF4aXMgc3RhcnQgYW5kIGVuZC4gRm9yIGJhc2VsaW5lIGFsaWdubWVu
dCwgdGhpcyBtZWFucyB3ZQogICAgIC8vIG5lZWQgdG8gYWxpZ24gdGhlIGFmdGVyIGVkZ2Ugb2Yg
YmFzZWxpbmUgZWxlbWVudHMgd2l0aCB0aGUgYWZ0ZXIgZWRnZSBvZiB0aGUgZmxleCBsaW5lLgot
ICAgIGNoaWxkID0gaXRlcmF0b3IuZmlyc3QoKTsKKyAgICBjaGlsZCA9IG1fb3JkZXJJdGVyYXRv
ci0+Zmlyc3QoKTsKICAgICBmb3IgKHNpemVfdCBsaW5lTnVtYmVyID0gMDsgbGluZU51bWJlciA8
IGxpbmVDb250ZXh0cy5zaXplKCk7ICsrbGluZU51bWJlcikgewogICAgICAgICBMYXlvdXRVbml0
IG1pbk1hcmdpbkFmdGVyQmFzZWxpbmUgPSBtaW5NYXJnaW5BZnRlckJhc2VsaW5lc1tsaW5lTnVt
YmVyXTsKLSAgICAgICAgZm9yIChzaXplX3QgY2hpbGROdW1iZXIgPSAwOyBjaGlsZE51bWJlciA8
IGxpbmVDb250ZXh0c1tsaW5lTnVtYmVyXS5udW1iZXJPZkNoaWxkcmVuOyArK2NoaWxkTnVtYmVy
LCBjaGlsZCA9IGl0ZXJhdG9yLm5leHQoKSkgeworICAgICAgICBmb3IgKHNpemVfdCBjaGlsZE51
bWJlciA9IDA7IGNoaWxkTnVtYmVyIDwgbGluZUNvbnRleHRzW2xpbmVOdW1iZXJdLm51bWJlck9m
Q2hpbGRyZW47ICsrY2hpbGROdW1iZXIsIGNoaWxkID0gbV9vcmRlckl0ZXJhdG9yLT5uZXh0KCkp
IHsKICAgICAgICAgICAgIEFTU0VSVChjaGlsZCk7CiAgICAgICAgICAgICBpZiAoYWxpZ25tZW50
Rm9yQ2hpbGQoY2hpbGQpID09IEFsaWduQmFzZWxpbmUgJiYgIWhhc0F1dG9NYXJnaW5zSW5Dcm9z
c0F4aXMoY2hpbGQpICYmIG1pbk1hcmdpbkFmdGVyQmFzZWxpbmUpCiAgICAgICAgICAgICAgICAg
YWRqdXN0QWxpZ25tZW50Rm9yQ2hpbGQoY2hpbGQsIG1pbk1hcmdpbkFmdGVyQmFzZWxpbmUpOwpA
QCAtMTM4MywxMyArMTM5MSwxNSBAQCB2b2lkIFJlbmRlckZsZXhpYmxlQm94OjphcHBseVN0cmV0
Y2hBbGlnbm1lbnRUb0NoaWxkKFJlbmRlckJveCogY2hpbGQsIExheW91dFVuaQogICAgIH0KIH0K
IAotdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6ZmxpcEZvclJpZ2h0VG9MZWZ0Q29sdW1uKE9yZGVy
SXRlcmF0b3ImIGl0ZXJhdG9yKQordm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6ZmxpcEZvclJpZ2h0
VG9MZWZ0Q29sdW1uKCkKIHsKKyAgICBBU1NFUlQobV9vcmRlckl0ZXJhdG9yKTsKKwogICAgIGlm
IChzdHlsZSgpLT5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCkgfHwgIWlzQ29sdW1uRmxvdygpKQog
ICAgICAgICByZXR1cm47CiAKICAgICBMYXlvdXRVbml0IGNyb3NzRXh0ZW50ID0gY3Jvc3NBeGlz
RXh0ZW50KCk7Ci0gICAgZm9yIChSZW5kZXJCb3gqIGNoaWxkID0gaXRlcmF0b3IuZmlyc3QoKTsg
Y2hpbGQ7IGNoaWxkID0gaXRlcmF0b3IubmV4dCgpKSB7CisgICAgZm9yIChSZW5kZXJCb3gqIGNo
aWxkID0gbV9vcmRlckl0ZXJhdG9yLT5maXJzdCgpOyBjaGlsZDsgY2hpbGQgPSBtX29yZGVySXRl
cmF0b3ItPm5leHQoKSkgewogICAgICAgICBpZiAoY2hpbGQtPmlzT3V0T2ZGbG93UG9zaXRpb25l
ZCgpKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIExheW91dFBvaW50IGxvY2F0aW9u
ID0gZmxvd0F3YXJlTG9jYXRpb25Gb3JDaGlsZChjaGlsZCk7CkBAIC0xMzk4LDEyICsxNDA4LDE0
IEBAIHZvaWQgUmVuZGVyRmxleGlibGVCb3g6OmZsaXBGb3JSaWdodFRvTGVmdENvbHVtbihPcmRl
ckl0ZXJhdG9yJiBpdGVyYXRvcikKICAgICB9CiB9CiAKLXZvaWQgUmVuZGVyRmxleGlibGVCb3g6
OmZsaXBGb3JXcmFwUmV2ZXJzZShPcmRlckl0ZXJhdG9yJiBpdGVyYXRvciwgY29uc3QgVmVjdG9y
PExpbmVDb250ZXh0PiYgbGluZUNvbnRleHRzLCBMYXlvdXRVbml0IGNyb3NzQXhpc1N0YXJ0RWRn
ZSkKK3ZvaWQgUmVuZGVyRmxleGlibGVCb3g6OmZsaXBGb3JXcmFwUmV2ZXJzZShjb25zdCBWZWN0
b3I8TGluZUNvbnRleHQ+JiBsaW5lQ29udGV4dHMsIExheW91dFVuaXQgY3Jvc3NBeGlzU3RhcnRF
ZGdlKQogeworICAgIEFTU0VSVChtX29yZGVySXRlcmF0b3IpOworCiAgICAgTGF5b3V0VW5pdCBj
b250ZW50RXh0ZW50ID0gY3Jvc3NBeGlzQ29udGVudEV4dGVudCgpOwotICAgIFJlbmRlckJveCog
Y2hpbGQgPSBpdGVyYXRvci5maXJzdCgpOworICAgIFJlbmRlckJveCogY2hpbGQgPSBtX29yZGVy
SXRlcmF0b3ItPmZpcnN0KCk7CiAgICAgZm9yIChzaXplX3QgbGluZU51bWJlciA9IDA7IGxpbmVO
dW1iZXIgPCBsaW5lQ29udGV4dHMuc2l6ZSgpOyArK2xpbmVOdW1iZXIpIHsKLSAgICAgICAgZm9y
IChzaXplX3QgY2hpbGROdW1iZXIgPSAwOyBjaGlsZE51bWJlciA8IGxpbmVDb250ZXh0c1tsaW5l
TnVtYmVyXS5udW1iZXJPZkNoaWxkcmVuOyArK2NoaWxkTnVtYmVyLCBjaGlsZCA9IGl0ZXJhdG9y
Lm5leHQoKSkgeworICAgICAgICBmb3IgKHNpemVfdCBjaGlsZE51bWJlciA9IDA7IGNoaWxkTnVt
YmVyIDwgbGluZUNvbnRleHRzW2xpbmVOdW1iZXJdLm51bWJlck9mQ2hpbGRyZW47ICsrY2hpbGRO
dW1iZXIsIGNoaWxkID0gbV9vcmRlckl0ZXJhdG9yLT5uZXh0KCkpIHsKICAgICAgICAgICAgIEFT
U0VSVChjaGlsZCk7CiAgICAgICAgICAgICBMYXlvdXRVbml0IGxpbmVDcm9zc0F4aXNFeHRlbnQg
PSBsaW5lQ29udGV4dHNbbGluZU51bWJlcl0uY3Jvc3NBeGlzRXh0ZW50OwogICAgICAgICAgICAg
TGF5b3V0VW5pdCBvcmlnaW5hbE9mZnNldCA9IGxpbmVDb250ZXh0c1tsaW5lTnVtYmVyXS5jcm9z
c0F4aXNPZmZzZXQgLSBjcm9zc0F4aXNTdGFydEVkZ2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCmluZGV4IDkxZGQxY2IuLmQyMmU0ZmMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCkBAIC0xMTgsMTIgKzEx
OCwxMiBAQCBwcml2YXRlOgogICAgIExheW91dFVuaXQgbWFpbkF4aXNTY3JvbGxiYXJFeHRlbnRG
b3JDaGlsZChSZW5kZXJCb3gqIGNoaWxkKSBjb25zdDsKICAgICBMYXlvdXRVbml0IHByZWZlcnJl
ZE1haW5BeGlzQ29udGVudEV4dGVudEZvckNoaWxkKFJlbmRlckJveCogY2hpbGQpOwogCi0gICAg
dm9pZCBsYXlvdXRGbGV4SXRlbXMoT3JkZXJJdGVyYXRvciYsIFZlY3RvcjxMaW5lQ29udGV4dD4m
KTsKKyAgICB2b2lkIGxheW91dEZsZXhJdGVtcyhWZWN0b3I8TGluZUNvbnRleHQ+Jik7CiAgICAg
TGF5b3V0VW5pdCBhdXRvTWFyZ2luT2Zmc2V0SW5NYWluQXhpcyhjb25zdCBPcmRlcmVkRmxleEl0
ZW1MaXN0JiwgTGF5b3V0VW5pdCYgYXZhaWxhYmxlRnJlZVNwYWNlKTsKICAgICB2b2lkIHVwZGF0
ZUF1dG9NYXJnaW5zSW5NYWluQXhpcyhSZW5kZXJCb3gqIGNoaWxkLCBMYXlvdXRVbml0IGF1dG9N
YXJnaW5PZmZzZXQpOwogICAgIGJvb2wgaGFzQXV0b01hcmdpbnNJbkNyb3NzQXhpcyhSZW5kZXJC
b3gqIGNoaWxkKSBjb25zdDsKICAgICBib29sIHVwZGF0ZUF1dG9NYXJnaW5zSW5Dcm9zc0F4aXMo
UmVuZGVyQm94KiBjaGlsZCwgTGF5b3V0VW5pdCBhdmFpbGFibGVBbGlnbm1lbnRTcGFjZSk7Ci0g
ICAgdm9pZCByZXBvc2l0aW9uTG9naWNhbEhlaWdodERlcGVuZGVudEZsZXhJdGVtcyhPcmRlckl0
ZXJhdG9yJiwgVmVjdG9yPExpbmVDb250ZXh0PiYsIExheW91dFVuaXQmIG9sZENsaWVudEFmdGVy
RWRnZSk7CisgICAgdm9pZCByZXBvc2l0aW9uTG9naWNhbEhlaWdodERlcGVuZGVudEZsZXhJdGVt
cyhWZWN0b3I8TGluZUNvbnRleHQ+JiwgTGF5b3V0VW5pdCYgb2xkQ2xpZW50QWZ0ZXJFZGdlKTsK
ICAgICB2b2lkIGNsZWFyQ2hpbGRPdmVycmlkZVNpemVzKCk7CiAgICAgdm9pZCBhcHBlbmRDaGls
ZEZyYW1lUmVjdHMoQ2hpbGRGcmFtZVJlY3RzJik7CiAgICAgdm9pZCByZXBhaW50Q2hpbGRyZW5E
dXJpbmdMYXlvdXRJZk1vdmVkKGNvbnN0IENoaWxkRnJhbWVSZWN0cyYpOwpAQCAtMTM0LDcgKzEz
NCw3IEBAIHByaXZhdGU6CiAgICAgTGF5b3V0VW5pdCBjb21wdXRlQ2hpbGRNYXJnaW5WYWx1ZShM
ZW5ndGggbWFyZ2luLCBSZW5kZXJWaWV3Kik7CiAgICAgdm9pZCBjb21wdXRlTWFpbkF4aXNQcmVm
ZXJyZWRTaXplcyhib29sIHJlbGF5b3V0Q2hpbGRyZW4sIE9yZGVySGFzaFNldCYpOwogICAgIExh
eW91dFVuaXQgYWRqdXN0Q2hpbGRTaXplRm9yTWluQW5kTWF4KFJlbmRlckJveCosIExheW91dFVu
aXQgY2hpbGRTaXplKTsKLSAgICBib29sIGNvbXB1dGVOZXh0RmxleExpbmUoT3JkZXJJdGVyYXRv
ciYsIE9yZGVyZWRGbGV4SXRlbUxpc3QmIG9yZGVyZWRDaGlsZHJlbiwgTGF5b3V0VW5pdCYgcHJl
ZmVycmVkTWFpbkF4aXNFeHRlbnQsIGRvdWJsZSYgdG90YWxGbGV4R3JvdywgZG91YmxlJiB0b3Rh
bFdlaWdodGVkRmxleFNocmluaywgTGF5b3V0VW5pdCYgbWluTWF4QXBwbGllZE1haW5BeGlzRXh0
ZW50KTsKKyAgICBib29sIGNvbXB1dGVOZXh0RmxleExpbmUoT3JkZXJlZEZsZXhJdGVtTGlzdCYg
b3JkZXJlZENoaWxkcmVuLCBMYXlvdXRVbml0JiBwcmVmZXJyZWRNYWluQXhpc0V4dGVudCwgZG91
YmxlJiB0b3RhbEZsZXhHcm93LCBkb3VibGUmIHRvdGFsV2VpZ2h0ZWRGbGV4U2hyaW5rLCBMYXlv
dXRVbml0JiBtaW5NYXhBcHBsaWVkTWFpbkF4aXNFeHRlbnQpOwogCiAgICAgYm9vbCByZXNvbHZl
RmxleGlibGVMZW5ndGhzKEZsZXhTaWduLCBjb25zdCBPcmRlcmVkRmxleEl0ZW1MaXN0JiwgTGF5
b3V0VW5pdCYgYXZhaWxhYmxlRnJlZVNwYWNlLCBkb3VibGUmIHRvdGFsRmxleEdyb3csIGRvdWJs
ZSYgdG90YWxXZWlnaHRlZEZsZXhTaHJpbmssIEluZmxleGlibGVGbGV4SXRlbVNpemUmLCBWZWN0
b3I8TGF5b3V0VW5pdD4mIGNoaWxkU2l6ZXMpOwogICAgIHZvaWQgZnJlZXplVmlvbGF0aW9ucyhj
b25zdCBWZWN0b3I8VmlvbGF0aW9uPiYsIExheW91dFVuaXQmIGF2YWlsYWJsZUZyZWVTcGFjZSwg
ZG91YmxlJiB0b3RhbEZsZXhHcm93LCBkb3VibGUmIHRvdGFsV2VpZ2h0ZWRGbGV4U2hyaW5rLCBJ
bmZsZXhpYmxlRmxleEl0ZW1TaXplJik7CkBAIC0xNDYsMTEgKzE0NiwxMSBAQCBwcml2YXRlOgog
ICAgIHNpemVfdCBudW1iZXJPZkluRmxvd1Bvc2l0aW9uZWRDaGlsZHJlbihjb25zdCBPcmRlcmVk
RmxleEl0ZW1MaXN0JikgY29uc3Q7CiAgICAgdm9pZCBsYXlvdXRBbmRQbGFjZUNoaWxkcmVuKExh
eW91dFVuaXQmIGNyb3NzQXhpc09mZnNldCwgY29uc3QgT3JkZXJlZEZsZXhJdGVtTGlzdCYsIGNv
bnN0IFZlY3RvcjxMYXlvdXRVbml0PiYgY2hpbGRTaXplcywgTGF5b3V0VW5pdCBhdmFpbGFibGVG
cmVlU3BhY2UsIFZlY3RvcjxMaW5lQ29udGV4dD4mKTsKICAgICB2b2lkIGxheW91dENvbHVtblJl
dmVyc2UoY29uc3QgT3JkZXJlZEZsZXhJdGVtTGlzdCYsIExheW91dFVuaXQgY3Jvc3NBeGlzT2Zm
c2V0LCBMYXlvdXRVbml0IGF2YWlsYWJsZUZyZWVTcGFjZSk7Ci0gICAgdm9pZCBhbGlnbkZsZXhM
aW5lcyhPcmRlckl0ZXJhdG9yJiwgVmVjdG9yPExpbmVDb250ZXh0PiYpOwotICAgIHZvaWQgYWxp
Z25DaGlsZHJlbihPcmRlckl0ZXJhdG9yJiwgY29uc3QgVmVjdG9yPExpbmVDb250ZXh0PiYpOwor
ICAgIHZvaWQgYWxpZ25GbGV4TGluZXMoVmVjdG9yPExpbmVDb250ZXh0PiYpOworICAgIHZvaWQg
YWxpZ25DaGlsZHJlbihjb25zdCBWZWN0b3I8TGluZUNvbnRleHQ+Jik7CiAgICAgdm9pZCBhcHBs
eVN0cmV0Y2hBbGlnbm1lbnRUb0NoaWxkKFJlbmRlckJveCosIExheW91dFVuaXQgbGluZUNyb3Nz
QXhpc0V4dGVudCk7Ci0gICAgdm9pZCBmbGlwRm9yUmlnaHRUb0xlZnRDb2x1bW4oT3JkZXJJdGVy
YXRvciYpOwotICAgIHZvaWQgZmxpcEZvcldyYXBSZXZlcnNlKE9yZGVySXRlcmF0b3ImLCBjb25z
dCBWZWN0b3I8TGluZUNvbnRleHQ+JiwgTGF5b3V0VW5pdCBjcm9zc0F4aXNTdGFydEVkZ2UpOwor
ICAgIHZvaWQgZmxpcEZvclJpZ2h0VG9MZWZ0Q29sdW1uKCk7CisgICAgdm9pZCBmbGlwRm9yV3Jh
cFJldmVyc2UoY29uc3QgVmVjdG9yPExpbmVDb250ZXh0PiYsIExheW91dFVuaXQgY3Jvc3NBeGlz
U3RhcnRFZGdlKTsKIAogICAgIE93blB0cjxPcmRlckl0ZXJhdG9yPiBtX29yZGVySXRlcmF0b3I7
CiAgICAgaW50IG1fbnVtYmVyT2ZJbkZsb3dDaGlsZHJlbk9uRmlyc3RMaW5lOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>