<?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>39115</bug_id>
          
          <creation_ts>2010-05-14 07:24:15 -0700</creation_ts>
          <short_desc>[Qt] QScriptEngine API should contain a newArray function</short_desc>
          <delta_ts>2010-07-01 11:26:32 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>40970</dependson>
          <blocked>31863</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jędrzej Nowacki">jedrzej.nowacki</reporter>
          <assigned_to name="QtWebKit Unassigned">webkit-qt-unassigned</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>hausmann</cc>
    
    <cc>jedrzej.nowacki</cc>
    
    <cc>kent.hansen</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>225797</commentid>
    <comment_count>0</comment_count>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-05-14 07:24:15 -0700</bug_when>
    <thetext>QScriptEngine API should contain a newArray function, that return an object of the Array class.
It should look like http://doc.trolltech.com/4.6/qscriptengine.html#newArray</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>231745</commentid>
    <comment_count>1</comment_count>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-05-28 09:25:03 -0700</bug_when>
    <thetext>To test the functionality it would be nice to have implemented QScriptValue::prototype() and QScriptValue::property().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239926</commentid>
    <comment_count>2</comment_count>
      <attachid>59109</attachid>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2010-06-18 08:23:56 -0700</bug_when>
    <thetext>Created attachment 59109
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239928</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-18 08:28:16 -0700</bug_when>
    <thetext>Attachment 59109 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WARNING: File exempt from style guide. Skipping: &quot;JavaScriptCore/qt/api/qscriptvalue_p.h&quot;
WARNING: File exempt from style guide. Skipping: &quot;JavaScriptCore/qt/api/qscriptvalue.cpp&quot;
WARNING: File exempt from style guide. Skipping: &quot;JavaScriptCore/qt/api/qscriptengine_p.cpp&quot;
JavaScriptCore/ChangeLog:24:  Line contains tab character.  [whitespace/tab] [5]
WARNING: File exempt from style guide. Skipping: &quot;JavaScriptCore/qt/api/qscriptengine_p.h&quot;
WARNING: File exempt from style guide. Skipping: &quot;JavaScriptCore/qt/api/qscriptengine.cpp&quot;
WARNING: File exempt from style guide. Skipping: &quot;JavaScriptCore/qt/api/qscriptengine.h&quot;
WARNING: File exempt from style guide. Skipping: &quot;JavaScriptCore/qt/api/qscriptvalue.h&quot;
Total errors found: 1 in 11 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240023</commentid>
    <comment_count>4</comment_count>
      <attachid>59133</attachid>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2010-06-18 10:37:40 -0700</bug_when>
    <thetext>Created attachment 59133
Patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240436</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-06-20 04:25:33 -0700</bug_when>
    <thetext>Caio, I suggest so split out the JSC C API change into a separate bug report, to be reviewed by the Apple guys.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240619</commentid>
    <comment_count>6</comment_count>
      <attachid>59133</attachid>
    <who name="Kent Hansen">kent.hansen</who>
    <bug_when>2010-06-21 00:56:12 -0700</bug_when>
    <thetext>Comment on attachment 59133
Patch v2

Hi Caio,
Very cool that you&apos;re helping with this!
QScriptEngine::newArray(uint) should construct an array with the given length, but without creating any elements. It should behave like described in 15.4.2.2 in ECMA-262.
You don&apos;t have to modify the C API for achieving this; constructing an empty array and then setting the &quot;length&quot; property should be fine too.
That said, I think the C API would be more useful if it does what you propose. Like Simon said, that is best done in a separate change, and it would need a test added to JavaScriptCore/API/tests/testapi.c.
I also think prototype() and property() should be implemented separately (even if only done partially in the first commit); there are separate bugs for that, https://bugs.webkit.org/show_bug.cgi?id=39356 and https://bugs.webkit.org/show_bug.cgi?id=40903.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241105</commentid>
    <comment_count>7</comment_count>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2010-06-21 22:17:58 -0700</bug_when>
    <thetext>Thanks for the comments, guys. I&apos;ll follow the suggestions. To begin, I already uploaded a (partial but already useful) patch for the property() bug. :)

The idea here was to enhance the C API to give us the same code path that we have for the one-argument constructor, and use that. This would give us the same optimization that the one-argument ctor would get in JavaScript (today this means an allocation of the internal vector in the construction time).

Anyway, I&apos;ll raise that question in a different bug/patch for JSC people to look at.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>244023</commentid>
    <comment_count>8</comment_count>
      <attachid>59969</attachid>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2010-06-28 18:19:28 -0700</bug_when>
    <thetext>Created attachment 59969
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>244026</commentid>
    <comment_count>9</comment_count>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2010-06-28 18:26:15 -0700</bug_when>
    <thetext>After discussion in bug 40970, modifying the C API to support the &quot;odd&quot; one argument constructor is not the best approach.

So this new patch do the simplest thing which is setting the length property on an empty array. As Kent pointed out, this fulfill our requirements. If the improvements suggested in 40970 are implemented (use &quot;length&quot; property as storage size hint), QScriptEngine::newArray() will benefit automatically.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>244032</commentid>
    <comment_count>10</comment_count>
      <attachid>59969</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-06-28 18:43:46 -0700</bug_when>
    <thetext>Comment on attachment 59969
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>244050</commentid>
    <comment_count>11</comment_count>
      <attachid>59969</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-28 20:04:46 -0700</bug_when>
    <thetext>Comment on attachment 59969
Patch

Clearing flags on attachment: 59969

Committed r62078: &lt;http://trac.webkit.org/changeset/62078&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>244051</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-28 20:04:51 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>244155</commentid>
    <comment_count>13</comment_count>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-06-29 01:24:47 -0700</bug_when>
    <thetext>Could you add a small benchmark?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245324</commentid>
    <comment_count>14</comment_count>
      <attachid>60242</attachid>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2010-07-01 07:04:46 -0700</bug_when>
    <thetext>Created attachment 60242
Simple benchmark test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245440</commentid>
    <comment_count>15</comment_count>
      <attachid>60242</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-07-01 11:26:32 -0700</bug_when>
    <thetext>Comment on attachment 60242
Simple benchmark test

Next time reopen the bug :-)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59109</attachid>
            <date>2010-06-18 08:23:56 -0700</date>
            <delta_ts>2010-06-18 10:37:40 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>0001-Implement-QScriptEngine-newArray.patch</filename>
            <type>text/plain</type>
            <size>14856</size>
            <attacher name="Caio Marcelo de Oliveira Filho">cmarcelo</attacher>
            
              <data encoding="base64">RnJvbSA5ZGY1OTlmMGUxMDJjOTU0YWUzNzIzNzFlNjdiMzBmZTRiYTYxMDVkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBDYWlvIE1hcmNlbG8gZGUgT2xpdmVpcmEgRmlsaG8gPGNhaW8u
b2xpdmVpcmFAb3BlbmJvc3NhLm9yZz4KRGF0ZTogRnJpLCAxOCBKdW4gMjAxMCAxMTo1MTowNiAt
MDMwMApTdWJqZWN0OiBbUEFUQ0hdIEltcGxlbWVudCBRU2NyaXB0RW5naW5lOjpuZXdBcnJheSgp
CgpbUXRdIFFTY3JpcHRFbmdpbmUgQVBJIHNob3VsZCBjb250YWluIGEgbmV3QXJyYXkgZnVuY3Rp
b24KaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTE1CgpUaGlzIGNv
bW1pdCBhZGRzIHRoZSBjYXBhYmlsaXR5IG9mIHRoZSBDIEFQSSB0byBjb25zdHJ1Y3QgYXJyYXlz
IHdpdGgKYSBzcGVjaWZpZWQgbGVuZ3RoIGZpbGxlZCB3aXRoIGVtcHR5IHZhbHVlcywgc2ltaWxh
ciB0byB0aGUgb25lCmFyZ3VtZW50IGNvbnN0cnVjdG9yIGluIEpTICJuZXcgQXJyYXkoNDIpIi4K
ClRvIGFjaGlldmUgdGhhdCB3aXRob3V0IGFkZGluZyBhIG5ldyBjb25zdHJ1Y3RvciwgYWxsb3cg
dGhlCkpTT2JqZWN0TWFrZUFycmF5KCkgdGFrZSBhIE5VTEwgYXJndW1lbnRzIGV2ZW4gaWYgd2l0
aCBhcmd1bWVudENvdW50Cm5vbi16ZXJvLiBUaGlzIHNob3VsZCBub3QgYWZmZWN0IGV4aXN0aW5n
IGNvZGUsIHNpbmNlIGl0IHdhcyBpbnZhbGlkCmlucHV0IGJlZm9yZSBhbmQgdGFrZW4gZm9yIGdy
YW50ZWQgYnkgdGhlIGZ1bmN0aW9uLgoKV2l0aCB0aGF0IGFkZGl0aW9uLCBpbXBsZW1lbnRzIHRo
ZSBRU2NyaXB0RW5naW5lOjpuZXdBcnJheSgpLiBUbyBhbGxvdwp1cyB0ZXN0aW5nIHRoZSBmdW5j
dGlvbmFsaXR5LCB0aGlzIGNvbW1pdCBhbHNvIGFkZHMgc3VwcG9ydCBmb3IKUVNjcmlwdFZhbHVl
Ojpwcm90b3R5cGUoKSBhbmQgcGFydGlhbCBzdXBwb3J0IGZvcgpRU2NyaXB0VmFsdWU6OnByb3Bl
cnR5KCkuCi0tLQogSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcCAgICAgICAgICAg
ICAgICAgfCAgIDEzICsrKystLQogSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmggICAg
ICAgICAgICAgICAgICAgfCAgICA3ICstLQogSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDQ1ICsrKysrKysrKysrKysrKysrKysrCiBKYXZhU2Ny
aXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZS5jcHAgICAgICAgICAgICB8ICAgMTAgKysrKwog
SmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuaCAgICAgICAgICAgICAgfCAgICAx
ICsKIEphdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lX3AuY3BwICAgICAgICAgIHwg
ICAgNSArKwogSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmVfcC5oICAgICAgICAg
ICAgfCAgICAxICsKIEphdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWUuY3BwICAgICAg
ICAgICAgIHwgICAzMiArKysrKysrKysrKysrKwogSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3Jp
cHR2YWx1ZS5oICAgICAgICAgICAgICAgfCAgIDEzICsrKysrLQogSmF2YVNjcmlwdENvcmUvcXQv
YXBpL3FzY3JpcHR2YWx1ZV9wLmggICAgICAgICAgICAgfCAgIDI2ICsrKysrKysrKysrCiAuLi4v
cXQvdGVzdHMvcXNjcmlwdGVuZ2luZS90c3RfcXNjcmlwdGVuZ2luZS5jcHAgICB8ICAgMjMgKysr
KysrKysrKwogMTEgZmlsZXMgY2hhbmdlZCwgMTY2IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9u
cygtKQoKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0FQSS9KU09iamVjdFJlZi5jcHAgYi9K
YXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYuY3BwCmluZGV4IDVlMDUzNmYuLjNmZTMwM2Eg
MTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL0FQSS9KU09iamVjdFJlZi5jcHAKKysrIGIvSmF2
YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcApAQCAtMTQxLDExICsxNDEsMTQgQEAgSlNP
YmplY3RSZWYgSlNPYmplY3RNYWtlQXJyYXkoSlNDb250ZXh0UmVmIGN0eCwgc2l6ZV90IGFyZ3Vt
ZW50Q291bnQsIGNvbnN0IEpTVmEKIAogICAgIEpTT2JqZWN0KiByZXN1bHQ7CiAgICAgaWYgKGFy
Z3VtZW50Q291bnQpIHsKLSAgICAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnTGlzdDsKLSAg
ICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBhcmd1bWVudENvdW50OyArK2kpCi0gICAgICAg
ICAgICBhcmdMaXN0LmFwcGVuZCh0b0pTKGV4ZWMsIGFyZ3VtZW50c1tpXSkpOwotCi0gICAgICAg
IHJlc3VsdCA9IGNvbnN0cnVjdEFycmF5KGV4ZWMsIGFyZ0xpc3QpOworICAgICAgICBpZiAoYXJn
dW1lbnRzKSB7CisgICAgICAgICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdMaXN0OworICAg
ICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBhcmd1bWVudENvdW50OyArK2kpCisgICAg
ICAgICAgICAgICAgYXJnTGlzdC5hcHBlbmQodG9KUyhleGVjLCBhcmd1bWVudHNbaV0pKTsKKwor
ICAgICAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0QXJyYXkoZXhlYywgYXJnTGlzdCk7CisgICAg
ICAgIH0gZWxzZQorICAgICAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0RW1wdHlBcnJheShleGVj
LCBhcmd1bWVudENvdW50KTsKICAgICB9IGVsc2UKICAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0
RW1wdHlBcnJheShleGVjKTsKIApkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvQVBJL0pTT2Jq
ZWN0UmVmLmggYi9KYXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYuaAppbmRleCAzZThiMGVi
Li5jYTUwOWZmIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYuaAor
KysgYi9KYXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYuaApAQCAtNDM0LDEyICs0MzQsMTEg
QEAgSlNfRVhQT1JUIEpTT2JqZWN0UmVmIEpTT2JqZWN0TWFrZUNvbnN0cnVjdG9yKEpTQ29udGV4
dFJlZiBjdHgsIEpTQ2xhc3NSZWYganNDbGEKICBAZnVuY3Rpb24KICBAYWJzdHJhY3QgQ3JlYXRl
cyBhIEphdmFTY3JpcHQgQXJyYXkgb2JqZWN0LgogIEBwYXJhbSBjdHggVGhlIGV4ZWN1dGlvbiBj
b250ZXh0IHRvIHVzZS4KLSBAcGFyYW0gYXJndW1lbnRDb3VudCBBbiBpbnRlZ2VyIGNvdW50IG9m
IHRoZSBudW1iZXIgb2YgYXJndW1lbnRzIGluIGFyZ3VtZW50cy4KLSBAcGFyYW0gYXJndW1lbnRz
IEEgSlNWYWx1ZSBhcnJheSBvZiBkYXRhIHRvIHBvcHVsYXRlIHRoZSBBcnJheSB3aXRoLiBQYXNz
IE5VTEwgaWYgYXJndW1lbnRDb3VudCBpcyAwLgorIEBwYXJhbSBhcmd1bWVudENvdW50IEFuIGlu
dGVnZXIgY291bnQgb2YgdGhlIG51bWJlciBvZiBhcmd1bWVudHMgdG8gcG9wdWxhdGUgdGhlIGFy
cmF5LgorIEBwYXJhbSBhcmd1bWVudHMgQSBKU1ZhbHVlIGFycmF5IG9mIGRhdGEgdG8gcG9wdWxh
dGUgdGhlIEFycmF5IHdpdGguIFBhc3MgTlVMTCBpZiBhcmd1bWVudENvdW50IGlzIDAgb3IgaWYg
eW91IHdhbnQgdG8gcG9wdWxhdGUgdGhlIGFycmF5IHdpdGggYXJndW1lbnRDb3VudCBlbXB0eSB2
YWx1ZXMuCiAgQHBhcmFtIGV4Y2VwdGlvbiBBIHBvaW50ZXIgdG8gYSBKU1ZhbHVlUmVmIGluIHdo
aWNoIHRvIHN0b3JlIGFuIGV4Y2VwdGlvbiwgaWYgYW55LiBQYXNzIE5VTEwgaWYgeW91IGRvIG5v
dCBjYXJlIHRvIHN0b3JlIGFuIGV4Y2VwdGlvbi4KICBAcmVzdWx0IEEgSlNPYmplY3QgdGhhdCBp
cyBhbiBBcnJheS4KLSBAZGlzY3Vzc2lvbiBUaGUgYmVoYXZpb3Igb2YgdGhpcyBmdW5jdGlvbiBk
b2VzIG5vdCBleGFjdGx5IG1hdGNoIHRoZSBiZWhhdmlvciBvZiB0aGUgYnVpbHQtaW4gQXJyYXkg
Y29uc3RydWN0b3IuIFNwZWNpZmljYWxseSwgaWYgb25lIGFyZ3VtZW50IAotIGlzIHN1cHBsaWVk
LCB0aGlzIGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgd2l0aCBvbmUgZWxlbWVudC4KKyBAZGlz
Y3Vzc2lvbiBUaGUgYmVoYXZpb3Igb2YgdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCBleGFjdGx5IG1h
dGNoIHRoZSBiZWhhdmlvciBvZiB0aGUgYnVpbHQtaW4gQXJyYXkgY29uc3RydWN0b3IuIFNwZWNp
ZmljYWxseSwgaWYgb25lIGFyZ3VtZW50IGlzIHN1cHBsaWVkLCB0aGlzIGZ1bmN0aW9uIHJldHVy
bnMgYW4gYXJyYXkgd2l0aCBvbmUgZWxlbWVudC4gVG8gZ2V0IHRoYXQgYmVoYXZpb3Igb2YgcG9w
dWxhdGluZyB3aXRoIGVtcHR5IHZhbHVlcywgcGFzcyBhIG5vbi16ZXJvIHZhbHVlIHRvIGFyZ3Vt
ZW50Q291bnQgYW5kIE5VTEwgdG8gYXJndW1lbnRzLgogICovCiBKU19FWFBPUlQgSlNPYmplY3RS
ZWYgSlNPYmplY3RNYWtlQXJyYXkoSlNDb250ZXh0UmVmIGN0eCwgc2l6ZV90IGFyZ3VtZW50Q291
bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikg
QVZBSUxBQkxFX0lOX1dFQktJVF9WRVJTSU9OXzRfMDsKIApkaWZmIC0tZ2l0IGEvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDc1NjM1OGYu
LjZjMTJkYjEgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0OCBAQAorMjAxMC0wNi0xOCAgQ2FpbyBN
YXJjZWxvIGRlIE9saXZlaXJhIEZpbGhvICA8Y2Fpby5vbGl2ZWlyYUBvcGVuYm9zc2Eub3JnPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUVNj
cmlwdEVuZ2luZSBBUEkgc2hvdWxkIGNvbnRhaW4gYSBuZXdBcnJheSBmdW5jdGlvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkxMTUKKworICAgICAg
ICBUaGlzIGNvbW1pdCBhZGRzIHRoZSBjYXBhYmlsaXR5IG9mIHRoZSBDIEFQSSB0byBjb25zdHJ1
Y3QgYXJyYXlzIHdpdGgKKyAgICAgICAgYSBzcGVjaWZpZWQgbGVuZ3RoIGZpbGxlZCB3aXRoIGVt
cHR5IHZhbHVlcywgc2ltaWxhciB0byB0aGUgb25lCisgICAgICAgIGFyZ3VtZW50IGNvbnN0cnVj
dG9yIGluIEpTICJuZXcgQXJyYXkoNDIpIi4KKworICAgICAgICBUbyBhY2hpZXZlIHRoYXQgd2l0
aG91dCBhZGRpbmcgYSBuZXcgY29uc3RydWN0b3IsIGFsbG93IHRoZQorICAgICAgICBKU09iamVj
dE1ha2VBcnJheSgpIHRha2UgYSBOVUxMIGFyZ3VtZW50cyBldmVuIGlmIHdpdGggYXJndW1lbnRD
b3VudAorICAgICAgICBub24temVyby4gVGhpcyBzaG91bGQgbm90IGFmZmVjdCBleGlzdGluZyBj
b2RlLCBzaW5jZSBpdCB3YXMgaW52YWxpZAorICAgICAgICBpbnB1dCBiZWZvcmUgYW5kIHRha2Vu
IGZvciBncmFudGVkIGJ5IHRoZSBmdW5jdGlvbi4KKworICAgICAgICBXaXRoIHRoYXQgYWRkaXRp
b24sIGltcGxlbWVudHMgdGhlIFFTY3JpcHRFbmdpbmU6Om5ld0FycmF5KCkuIFRvIGFsbG93Cisg
ICAgICAgIHVzIHRlc3RpbmcgdGhlIGZ1bmN0aW9uYWxpdHksIHRoaXMgY29tbWl0IGFsc28gYWRk
cyBzdXBwb3J0IGZvcgorICAgICAgICBRU2NyaXB0VmFsdWU6OnByb3RvdHlwZSgpIGFuZCBwYXJ0
aWFsIHN1cHBvcnQgZm9yCisgICAgICAgIFFTY3JpcHRWYWx1ZTo6cHJvcGVydHkoKS4KKworICAg
ICAgICAqIEFQSS9KU09iamVjdFJlZi5jcHA6CisgICAgICAgIChKU09iamVjdE1ha2VBcnJheSk6
IElmIGFyZ3VtZW50cyBpcyBOVUxMIGJ1dCBoYXZlIGFyZ3VtZW50Q291bnQsIHVzZQorCXRoZSBl
bXB0eSBjb25zdHJ1Y3RvciB3aXRoIGEgbGVuZ3RoLgorICAgICAgICAqIEFQSS9KU09iamVjdFJl
Zi5oOiBDaGFuZ2UgZG9jdW1lbnRhdGlvbi4KKworICAgICAgICAqIHF0L2FwaS9xc2NyaXB0ZW5n
aW5lLmNwcDoKKyAgICAgICAgKFFTY3JpcHRFbmdpbmU6Om5ld0FycmF5KToKKyAgICAgICAgKiBx
dC9hcGkvcXNjcmlwdGVuZ2luZS5oOgorICAgICAgICAqIHF0L2FwaS9xc2NyaXB0ZW5naW5lX3Au
Y3BwOgorICAgICAgICAoUVNjcmlwdEVuZ2luZVByaXZhdGU6Om5ld0FycmF5KTogVXNlIEpTT2Jq
ZWN0TWFrZUFycmF5KCkuCisgICAgICAgICogcXQvYXBpL3FzY3JpcHRlbmdpbmVfcC5oOgorCisg
ICAgICAgICogcXQvYXBpL3FzY3JpcHR2YWx1ZS5jcHA6CisgICAgICAgIChRU2NyaXB0VmFsdWU6
OnByb3RvdHlwZSk6CisgICAgICAgIChRU2NyaXB0VmFsdWU6OnByb3BlcnR5KToKKyAgICAgICAg
KiBxdC9hcGkvcXNjcmlwdHZhbHVlLmg6CisgICAgICAgIChRU2NyaXB0VmFsdWU6Oik6IEFkZCBl
bnVtIFJlc29sdmVGbGFncyBmcm9tIFF0U2NyaXB0IEFQSS4KKyAgICAgICAgKiBxdC9hcGkvcXNj
cmlwdHZhbHVlX3AuaDoKKyAgICAgICAgKFFTY3JpcHRWYWx1ZVByaXZhdGU6OnByb3RvdHlwZSk6
IEltcGxlbWVudGF0aW9uIG9mIHByb3RvdHlwZS4KKyAgICAgICAgKFFTY3JpcHRWYWx1ZVByaXZh
dGU6OnByb3BlcnR5KTogUGFydGlhbCBpbXBsZW1lbnRhdGlvbiBvZiBwcm9wZXJ0eS4KKworICAg
ICAgICAqIHF0L3Rlc3RzL3FzY3JpcHRlbmdpbmUvdHN0X3FzY3JpcHRlbmdpbmUuY3BwOgorICAg
ICAgICAodHN0X1FTY3JpcHRFbmdpbmU6Om5ld0FycmF5KTogU2ltcGxlIHNhbml0eSB0ZXN0IG9m
IG5ld0FycmF5KCkuCisKIDIwMTAtMDYtMTcgIFNodSBDaGFuZyAgPGNoYW5nLnNodUBub2tpYS5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCmRp
ZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZS5jcHAgYi9KYXZh
U2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZS5jcHAKaW5kZXggZTFiZGY3Ny4uY2Q0ODEx
NiAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuY3BwCisr
KyBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lLmNwcApAQCAtMjA2LDYgKzIw
NiwxNiBAQCBRU2NyaXB0VmFsdWUgUVNjcmlwdEVuZ2luZTo6bmV3T2JqZWN0KCkKIH0KIAogLyoh
CisgIENyZWF0ZXMgYSBRdFNjcmlwdCBvYmplY3Qgb2YgY2xhc3MgQXJyYXkgd2l0aCB0aGUgZ2l2
ZW4gXGEgbGVuZ3RoLgorCisgIFxzYSBuZXdPYmplY3QoKQorKi8KK1FTY3JpcHRWYWx1ZSBRU2Ny
aXB0RW5naW5lOjpuZXdBcnJheSh1aW50IGxlbmd0aCkKK3sKKyAgICByZXR1cm4gUVNjcmlwdFZh
bHVlUHJpdmF0ZTo6Z2V0KGRfcHRyLT5uZXdBcnJheShsZW5ndGgpKTsKK30KKworLyohCiAgIFJl
dHVybnMgdGhpcyBlbmdpbmUncyBHbG9iYWwgT2JqZWN0LgogCiAgIEJ5IGRlZmF1bHQsIHRoZSBH
bG9iYWwgT2JqZWN0IGNvbnRhaW5zIHRoZSBidWlsdC1pbiBvYmplY3RzIHRoYXQgYXJlCmRpZmYg
LS1naXQgYS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZS5oIGIvSmF2YVNjcmlw
dENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuaAppbmRleCA2NTNkZmZlLi5jMDA4MTA5IDEwMDY0
NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZS5oCisrKyBiL0phdmFT
Y3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lLmgKQEAgLTUxLDYgKzUxLDcgQEAgcHVibGlj
OgogICAgIFFTY3JpcHRWYWx1ZSBudWxsVmFsdWUoKTsKICAgICBRU2NyaXB0VmFsdWUgdW5kZWZp
bmVkVmFsdWUoKTsKICAgICBRU2NyaXB0VmFsdWUgbmV3T2JqZWN0KCk7CisgICAgUVNjcmlwdFZh
bHVlIG5ld0FycmF5KHVpbnQgbGVuZ3RoID0gMCk7CiAgICAgUVNjcmlwdFZhbHVlIGdsb2JhbE9i
amVjdCgpIGNvbnN0OwogcHJpdmF0ZToKICAgICBmcmllbmQgY2xhc3MgUVNjcmlwdEVuZ2luZVBy
aXZhdGU7CmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZV9w
LmNwcCBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lX3AuY3BwCmluZGV4IGE2
Y2Y0YTQuLjA0YzJjNjIgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0
ZW5naW5lX3AuY3BwCisrKyBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lX3Au
Y3BwCkBAIC04Miw2ICs4MiwxMSBAQCBRU2NyaXB0VmFsdWVQcml2YXRlKiBRU2NyaXB0RW5naW5l
UHJpdmF0ZTo6bmV3T2JqZWN0KCkgY29uc3QKICAgICByZXR1cm4gbmV3IFFTY3JpcHRWYWx1ZVBy
aXZhdGUodGhpcywgSlNPYmplY3RNYWtlKG1fY29udGV4dCwgLyoganNDbGFzcyAqLyAwLCAvKiB1
c2VyRGF0YSAqLyAwKSk7CiB9CiAKK1FTY3JpcHRWYWx1ZVByaXZhdGUqIFFTY3JpcHRFbmdpbmVQ
cml2YXRlOjpuZXdBcnJheSh1aW50IGxlbmd0aCkgY29uc3QKK3sKKyAgICByZXR1cm4gbmV3IFFT
Y3JpcHRWYWx1ZVByaXZhdGUodGhpcywgSlNPYmplY3RNYWtlQXJyYXkobV9jb250ZXh0LCAvKiBh
cmd1bWVudENvdW50ICovIGxlbmd0aCwgLyogYXJndW1lbnRzICovIDAsIC8qIGV4Y2VwdGlvbiAq
LyAwKSk7Cit9CisKIFFTY3JpcHRWYWx1ZVByaXZhdGUqIFFTY3JpcHRFbmdpbmVQcml2YXRlOjpn
bG9iYWxPYmplY3QoKSBjb25zdAogewogICAgIEpTT2JqZWN0UmVmIGdsb2JhbE9iamVjdCA9IEpT
Q29udGV4dEdldEdsb2JhbE9iamVjdChtX2NvbnRleHQpOwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlw
dENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmVfcC5oIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3Fz
Y3JpcHRlbmdpbmVfcC5oCmluZGV4IDkwODNmN2QuLjQwYWVjMTQgMTAwNjQ0Ci0tLSBhL0phdmFT
Y3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lX3AuaAorKysgYi9KYXZhU2NyaXB0Q29yZS9x
dC9hcGkvcXNjcmlwdGVuZ2luZV9wLmgKQEAgLTU3LDYgKzU3LDcgQEAgcHVibGljOgogICAgIGlu
bGluZSBKU1ZhbHVlUmVmIG1ha2VKU1ZhbHVlKFFTY3JpcHRWYWx1ZTo6U3BlY2lhbFZhbHVlIHZh
bHVlKSBjb25zdDsKIAogICAgIFFTY3JpcHRWYWx1ZVByaXZhdGUqIG5ld09iamVjdCgpIGNvbnN0
OworICAgIFFTY3JpcHRWYWx1ZVByaXZhdGUqIG5ld0FycmF5KHVpbnQgbGVuZ3RoKSBjb25zdDsK
ICAgICBRU2NyaXB0VmFsdWVQcml2YXRlKiBnbG9iYWxPYmplY3QoKSBjb25zdDsKIAogICAgIGlu
bGluZSBRU2NyaXB0U3RyaW5nUHJpdmF0ZSogdG9TdHJpbmdIYW5kbGUoY29uc3QgUVN0cmluZyYg
c3RyKSBjb25zdDsKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFs
dWUuY3BwIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZS5jcHAKaW5kZXggMjJm
ZjhiZS4uMzAyNzAwNCAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2
YWx1ZS5jcHAKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZS5jcHAKQEAg
LTU5OSwzICs1OTksMzUgQEAgYm9vbCBRU2NyaXB0VmFsdWU6Omluc3RhbmNlT2YoY29uc3QgUVNj
cmlwdFZhbHVlJiBvdGhlcikgY29uc3QKIHsKICAgICByZXR1cm4gZF9wdHItPmluc3RhbmNlT2Yo
UVNjcmlwdFZhbHVlUHJpdmF0ZTo6Z2V0KG90aGVyKSk7CiB9CisKKy8qIQorICBJZiB0aGlzIFFT
Y3JpcHRWYWx1ZSBpcyBhbiBvYmplY3QsIHJldHVybnMgdGhlIGludGVybmFsIHByb3RvdHlwZQor
ICAoXGN7X19wcm90b19ffSBwcm9wZXJ0eSkgb2YgdGhpcyBvYmplY3Q7IG90aGVyd2lzZSByZXR1
cm5zIGFuCisgIGludmFsaWQgUVNjcmlwdFZhbHVlLgorCisgIFxzYSBzZXRQcm90b3R5cGUoKSwg
aXNPYmplY3QoKQorKi8KK1FTY3JpcHRWYWx1ZSBRU2NyaXB0VmFsdWU6OnByb3RvdHlwZSgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmdldChkX3B0ci0+cHJvdG90
eXBlKCkpOworfQorCisvKiEKKyAgUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhpcyBRU2NyaXB0VmFs
dWUncyBwcm9wZXJ0eSB3aXRoIHRoZSBnaXZlbiBcYSBuYW1lLAorICB1c2luZyB0aGUgZ2l2ZW4g
XGEgbW9kZSB0byByZXNvbHZlIHRoZSBwcm9wZXJ0eS4KKworICBJZiBubyBzdWNoIHByb3BlcnR5
IGV4aXN0cywgYW4gaW52YWxpZCBRU2NyaXB0VmFsdWUgaXMgcmV0dXJuZWQuCisKKyAgSWYgdGhl
IHByb3BlcnR5IGlzIGltcGxlbWVudGVkIHVzaW5nIGEgZ2V0dGVyIGZ1bmN0aW9uIChpLmUuIGhh
cyB0aGUKKyAgUHJvcGVydHlHZXR0ZXIgZmxhZyBzZXQpLCBjYWxsaW5nIHByb3BlcnR5KCkgaGFz
IHNpZGUtZWZmZWN0cyBvbiB0aGUKKyAgc2NyaXB0IGVuZ2luZSwgc2luY2UgdGhlIGdldHRlciBm
dW5jdGlvbiB3aWxsIGJlIGNhbGxlZCAocG9zc2libHkKKyAgcmVzdWx0aW5nIGluIGFuIHVuY2F1
Z2h0IHNjcmlwdCBleGNlcHRpb24pLiBJZiBhbiBleGNlcHRpb24KKyAgb2NjdXJyZWQsIHByb3Bl
cnR5KCkgcmV0dXJucyB0aGUgdmFsdWUgdGhhdCB3YXMgdGhyb3duICh0eXBpY2FsbHkKKyAgYW4g
XGN7RXJyb3J9IG9iamVjdCkuCisKKyAgXHNhIHNldFByb3BlcnR5KCksIHByb3BlcnR5RmxhZ3Mo
KSwgUVNjcmlwdFZhbHVlSXRlcmF0b3IKKyovCitRU2NyaXB0VmFsdWUgUVNjcmlwdFZhbHVlOjpw
cm9wZXJ0eShjb25zdCBRU3RyaW5nJiBuYW1lLCBjb25zdCBSZXNvbHZlRmxhZ3MmIG1vZGUpIGNv
bnN0Cit7CisgICAgcmV0dXJuIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmdldChkX3B0ci0+cHJvcGVy
dHkobmFtZSwgbW9kZSkpOworfQpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3Fz
Y3JpcHR2YWx1ZS5oIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZS5oCmluZGV4
IDZjNDI0MjkuLmJlMDVlMzMgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2Ny
aXB0dmFsdWUuaAorKysgYi9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdHZhbHVlLmgKQEAg
LTMyLDcgKzMyLDE0IEBAIHR5cGVkZWYgUUxpc3Q8UVNjcmlwdFZhbHVlPiBRU2NyaXB0VmFsdWVM
aXN0OwogdHlwZWRlZiBkb3VibGUgcXNyZWFsOwogCiBjbGFzcyBRU2NyaXB0VmFsdWUgewotcHVi
bGljOiAgICAKK3B1YmxpYzoKKyAgICBlbnVtIFJlc29sdmVGbGFnIHsKKyAgICAgICAgUmVzb2x2
ZUxvY2FsICAgICAgICA9IDB4MDAsCisgICAgICAgIFJlc29sdmVQcm90b3R5cGUgICAgPSAweDAx
CisgICAgfTsKKworICAgIFFfREVDTEFSRV9GTEFHUyhSZXNvbHZlRmxhZ3MsIFJlc29sdmVGbGFn
KQorCiAgICAgZW51bSBTcGVjaWFsVmFsdWUgewogICAgICAgICBOdWxsVmFsdWUsCiAgICAgICAg
IFVuZGVmaW5lZFZhbHVlCkBAIC02Myw2ICs3MCwxMCBAQCBwdWJsaWM6CiAgICAgYm9vbCBzdHJp
Y3RseUVxdWFscyhjb25zdCBRU2NyaXB0VmFsdWUmIG90aGVyKSBjb25zdDsKICAgICBib29sIGlu
c3RhbmNlT2YoY29uc3QgUVNjcmlwdFZhbHVlJiBvdGhlcikgY29uc3Q7CiAKKyAgICBRU2NyaXB0
VmFsdWUgcHJvdG90eXBlKCkgY29uc3Q7CisKKyAgICBRU2NyaXB0VmFsdWUgcHJvcGVydHkoY29u
c3QgUVN0cmluZyYgbmFtZSwgY29uc3QgUmVzb2x2ZUZsYWdzJiBtb2RlID0gUmVzb2x2ZVByb3Rv
dHlwZSkgY29uc3Q7CisKICAgICBRU2NyaXB0RW5naW5lKiBlbmdpbmUoKSBjb25zdDsKIAogICAg
IGJvb2wgaXNWYWxpZCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcXQvYXBp
L3FzY3JpcHR2YWx1ZV9wLmggYi9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdHZhbHVlX3Au
aAppbmRleCAxYmI4YTc3Li45MGRhMjBjIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9xdC9h
cGkvcXNjcmlwdHZhbHVlX3AuaAorKysgYi9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdHZh
bHVlX3AuaApAQCAtMTE0LDYgKzExNCw4IEBAIHB1YmxpYzoKICAgICBpbmxpbmUgYm9vbCBlcXVh
bHMoUVNjcmlwdFZhbHVlUHJpdmF0ZSogb3RoZXIpOwogICAgIGlubGluZSBib29sIHN0cmljdGx5
RXF1YWxzKFFTY3JpcHRWYWx1ZVByaXZhdGUqIG90aGVyKTsKICAgICBpbmxpbmUgYm9vbCBpbnN0
YW5jZU9mKFFTY3JpcHRWYWx1ZVByaXZhdGUqIG90aGVyKTsKKyAgICBpbmxpbmUgUVNjcmlwdFZh
bHVlUHJpdmF0ZSogcHJvdG90eXBlKCk7CisgICAgaW5saW5lIFFTY3JpcHRWYWx1ZVByaXZhdGUq
IHByb3BlcnR5KGNvbnN0IFFTdHJpbmcmIG5hbWUsIGNvbnN0IFFTY3JpcHRWYWx1ZTo6UmVzb2x2
ZUZsYWdzJiBtb2RlKTsKICAgICBpbmxpbmUgYm9vbCBhc3NpZ25FbmdpbmUoUVNjcmlwdEVuZ2lu
ZVByaXZhdGUqIGVuZ2luZSk7CiAKICAgICBpbmxpbmUgUVNjcmlwdFZhbHVlUHJpdmF0ZSogY2Fs
bChjb25zdCBRU2NyaXB0VmFsdWVQcml2YXRlKiAsIGNvbnN0IFFTY3JpcHRWYWx1ZUxpc3QmIGFy
Z3MpOwpAQCAtNjgyLDYgKzY4NCwzMCBAQCBpbmxpbmUgYm9vbCBRU2NyaXB0VmFsdWVQcml2YXRl
OjppbnN0YW5jZU9mKFFTY3JpcHRWYWx1ZVByaXZhdGUqIG90aGVyKQogICAgIHJldHVybiBKU1Zh
bHVlSXNJbnN0YW5jZU9mQ29uc3RydWN0b3IoKm1fZW5naW5lLCAqdGhpcywgKm90aGVyLCAvKiBl
eGNlcHRpb24gKi8gMCk7CiB9CiAKK2lubGluZSBRU2NyaXB0VmFsdWVQcml2YXRlKiBRU2NyaXB0
VmFsdWVQcml2YXRlOjpwcm90b3R5cGUoKQoreworICAgIGlmICghaXNPYmplY3QoKSkKKyAgICAg
ICAgcmV0dXJuIG5ldyBRU2NyaXB0VmFsdWVQcml2YXRlOworCisgICAgcmV0dXJuIG5ldyBRU2Ny
aXB0VmFsdWVQcml2YXRlKG1fZW5naW5lLmNvbnN0RGF0YSgpLCBKU09iamVjdEdldFByb3RvdHlw
ZSgqbV9lbmdpbmUsICp0aGlzKSk7Cit9CisKK2lubGluZSBRU2NyaXB0VmFsdWVQcml2YXRlKiBR
U2NyaXB0VmFsdWVQcml2YXRlOjpwcm9wZXJ0eShjb25zdCBRU3RyaW5nJiBuYW1lLCBjb25zdCBR
U2NyaXB0VmFsdWU6OlJlc29sdmVGbGFncyYgbW9kZSkKK3sKKyAgICBpZiAoIWlzT2JqZWN0KCkp
CisgICAgICAgIHJldHVybiBuZXcgUVNjcmlwdFZhbHVlUHJpdmF0ZTsKKworICAgIGlmIChtb2Rl
ICYgUVNjcmlwdFZhbHVlOjpSZXNvbHZlTG9jYWwpIHsKKyAgICAgICAgcVdhcm5pbmcoIlFTY3Jp
cHRWYWx1ZTo6cHJvcGVydHkoKTogUmVzb2x2ZUxvY2FsIG5vdCBzdXBwb3J0ZWQgeWV0LiIpOwor
ICAgICAgICByZXR1cm4gbmV3IFFTY3JpcHRWYWx1ZVByaXZhdGU7CisgICAgfQorCisgICAgSlNS
ZXRhaW5QdHI8SlNTdHJpbmdSZWY+IG5hbWVSZWYoQWRvcHQsIFFTY3JpcHRDb252ZXJ0ZXI6OnRv
U3RyaW5nKG5hbWUpKTsKKyAgICBRU2NyaXB0VmFsdWVQcml2YXRlKiByZXN1bHQgPSBuZXcgUVNj
cmlwdFZhbHVlUHJpdmF0ZShtX2VuZ2luZS5jb25zdERhdGEoKSwgSlNPYmplY3RHZXRQcm9wZXJ0
eSgqbV9lbmdpbmUsICp0aGlzLCBuYW1lUmVmLmdldCgpLCAvKiBleGNlcHRpb24gKi8gMCkpOwor
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogLyohCiAgIFRyaWVzIHRvIGFzc2lnbiBcYSBlbmdp
bmUgdG8gdGhpcyB2YWx1ZS4gUmV0dXJucyB0cnVlIG9uIHN1Y2Nlc3M7IG90aGVyd2lzZSByZXR1
cm5zIGZhbHNlLgogKi8KZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3Jp
cHRlbmdpbmUvdHN0X3FzY3JpcHRlbmdpbmUuY3BwIGIvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMv
cXNjcmlwdGVuZ2luZS90c3RfcXNjcmlwdGVuZ2luZS5jcHAKaW5kZXggZDU0NWYzNy4uMTY0YjY3
OCAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdGVuZ2luZS90c3Rf
cXNjcmlwdGVuZ2luZS5jcHAKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdGVu
Z2luZS90c3RfcXNjcmlwdGVuZ2luZS5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAgcHJpdmF0ZSBzbG90
czoKICAgICB2b2lkIGNoZWNrU3ludGF4KCk7CiAgICAgdm9pZCB0b09iamVjdCgpOwogICAgIHZv
aWQgdG9PYmplY3RUd29FbmdpbmVzKCk7CisgICAgdm9pZCBuZXdBcnJheSgpOwogfTsKIAogLyog
RXZhbHVhdGluZyBhIHNjcmlwdCB0aGF0IHRocm93IGFuIHVuaGFuZGxlZCBleGNlcHRpb24gc2hv
dWxkIHJldHVybiBhbiBpbnZhbGlkIHZhbHVlLiAqLwpAQCAtNDA5LDUgKzQxMCwyNyBAQCB2b2lk
IHRzdF9RU2NyaXB0RW5naW5lOjp0b09iamVjdFR3b0VuZ2luZXMoKQogICAgIH0KIH0KIAordm9p
ZCB0c3RfUVNjcmlwdEVuZ2luZTo6bmV3QXJyYXkoKQoreworICAgIFFTY3JpcHRFbmdpbmUgZW5n
OworICAgIFFTY3JpcHRWYWx1ZSBhcnJheSA9IGVuZy5uZXdBcnJheSgpOworICAgIFFDT01QQVJF
KGFycmF5LmlzVmFsaWQoKSwgdHJ1ZSk7CisgICAgLy8gUUNPTVBBUkUoYXJyYXkuaXNBcnJheSgp
LCB0cnVlKTsKKyAgICBRQ09NUEFSRShhcnJheS5pc09iamVjdCgpLCB0cnVlKTsKKyAgICBRVkVS
SUZZKCFhcnJheS5pc0Z1bmN0aW9uKCkpOworICAgIC8vIFFDT01QQVJFKGFycmF5LnNjcmlwdENs
YXNzKCksIChRU2NyaXB0Q2xhc3MqKTApOworCisgICAgLy8gUHJvdG90eXBlIHNob3VsZCBiZSBB
cnJheS5wcm90b3R5cGUuCisgICAgUUNPTVBBUkUoYXJyYXkucHJvdG90eXBlKCkuaXNWYWxpZCgp
LCB0cnVlKTsKKyAgICAvLyBRQ09NUEFSRShhcnJheS5wcm90b3R5cGUoKS5pc0FycmF5KCksIHRy
dWUpOworICAgIFFDT01QQVJFKGFycmF5LnByb3RvdHlwZSgpLnN0cmljdGx5RXF1YWxzKGVuZy5l
dmFsdWF0ZSgiQXJyYXkucHJvdG90eXBlIikpLCB0cnVlKTsKKworICAgIFFTY3JpcHRWYWx1ZSBh
cnJheVdpdGhTaXplID0gZW5nLm5ld0FycmF5KDQyKTsKKyAgICBRQ09NUEFSRShhcnJheVdpdGhT
aXplLmlzVmFsaWQoKSwgdHJ1ZSk7CisgICAgLy8gUUNPTVBBUkUoYXJyYXlXaXRoU2l6ZS5pc0Fy
cmF5KCksIHRydWUpOworICAgIFFDT01QQVJFKGFycmF5V2l0aFNpemUuaXNPYmplY3QoKSwgdHJ1
ZSk7CisgICAgUUNPTVBBUkUoYXJyYXlXaXRoU2l6ZS5wcm9wZXJ0eSgibGVuZ3RoIikudG9JbnQz
MigpLCA0Mik7Cit9CisKIFFURVNUX01BSU4odHN0X1FTY3JpcHRFbmdpbmUpCiAjaW5jbHVkZSAi
dHN0X3FzY3JpcHRlbmdpbmUubW9jIgotLSAKMS43LjAuMQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59133</attachid>
            <date>2010-06-18 10:37:40 -0700</date>
            <delta_ts>2010-06-28 18:19:16 -0700</delta_ts>
            <desc>Patch v2</desc>
            <filename>0001-Implement-QScriptEngine-newArray.patch</filename>
            <type>text/plain</type>
            <size>14863</size>
            <attacher name="Caio Marcelo de Oliveira Filho">cmarcelo</attacher>
            
              <data encoding="base64">RnJvbSBhNzYxY2Y0ZjFjY2EwOWExZDY0NmJiYzRjNTUzNTVkMTJiNDcyZGEwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBDYWlvIE1hcmNlbG8gZGUgT2xpdmVpcmEgRmlsaG8gPGNhaW8u
b2xpdmVpcmFAb3BlbmJvc3NhLm9yZz4KRGF0ZTogRnJpLCAxOCBKdW4gMjAxMCAxMTo1MTowNiAt
MDMwMApTdWJqZWN0OiBbUEFUQ0hdIEltcGxlbWVudCBRU2NyaXB0RW5naW5lOjpuZXdBcnJheSgp
CgpbUXRdIFFTY3JpcHRFbmdpbmUgQVBJIHNob3VsZCBjb250YWluIGEgbmV3QXJyYXkgZnVuY3Rp
b24KaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTE1CgpUaGlzIGNv
bW1pdCBhZGRzIHRoZSBjYXBhYmlsaXR5IG9mIHRoZSBDIEFQSSB0byBjb25zdHJ1Y3QgYXJyYXlz
IHdpdGgKYSBzcGVjaWZpZWQgbGVuZ3RoIGZpbGxlZCB3aXRoIGVtcHR5IHZhbHVlcywgc2ltaWxh
ciB0byB0aGUgb25lCmFyZ3VtZW50IGNvbnN0cnVjdG9yIGluIEpTICJuZXcgQXJyYXkoNDIpIi4K
ClRvIGFjaGlldmUgdGhhdCB3aXRob3V0IGFkZGluZyBhIG5ldyBjb25zdHJ1Y3RvciwgYWxsb3cg
dGhlCkpTT2JqZWN0TWFrZUFycmF5KCkgdGFrZSBhIE5VTEwgYXJndW1lbnRzIGV2ZW4gaWYgd2l0
aCBhcmd1bWVudENvdW50Cm5vbi16ZXJvLiBUaGlzIHNob3VsZCBub3QgYWZmZWN0IGV4aXN0aW5n
IGNvZGUsIHNpbmNlIGl0IHdhcyBpbnZhbGlkCmlucHV0IGJlZm9yZSBhbmQgdGFrZW4gZm9yIGdy
YW50ZWQgYnkgdGhlIGZ1bmN0aW9uLgoKV2l0aCB0aGF0IGFkZGl0aW9uLCBpbXBsZW1lbnRzIHRo
ZSBRU2NyaXB0RW5naW5lOjpuZXdBcnJheSgpLiBUbyBhbGxvdwp1cyB0ZXN0aW5nIHRoZSBmdW5j
dGlvbmFsaXR5LCB0aGlzIGNvbW1pdCBhbHNvIGFkZHMgc3VwcG9ydCBmb3IKUVNjcmlwdFZhbHVl
Ojpwcm90b3R5cGUoKSBhbmQgcGFydGlhbCBzdXBwb3J0IGZvcgpRU2NyaXB0VmFsdWU6OnByb3Bl
cnR5KCkuCi0tLQogSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcCAgICAgICAgICAg
ICAgICAgfCAgIDEzICsrKystLQogSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmggICAg
ICAgICAgICAgICAgICAgfCAgICA3ICstLQogSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDQ1ICsrKysrKysrKysrKysrKysrKysrCiBKYXZhU2Ny
aXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZS5jcHAgICAgICAgICAgICB8ICAgMTAgKysrKwog
SmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuaCAgICAgICAgICAgICAgfCAgICAx
ICsKIEphdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lX3AuY3BwICAgICAgICAgIHwg
ICAgNSArKwogSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmVfcC5oICAgICAgICAg
ICAgfCAgICAxICsKIEphdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWUuY3BwICAgICAg
ICAgICAgIHwgICAzMiArKysrKysrKysrKysrKwogSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3Jp
cHR2YWx1ZS5oICAgICAgICAgICAgICAgfCAgIDEzICsrKysrLQogSmF2YVNjcmlwdENvcmUvcXQv
YXBpL3FzY3JpcHR2YWx1ZV9wLmggICAgICAgICAgICAgfCAgIDI2ICsrKysrKysrKysrCiAuLi4v
cXQvdGVzdHMvcXNjcmlwdGVuZ2luZS90c3RfcXNjcmlwdGVuZ2luZS5jcHAgICB8ICAgMjMgKysr
KysrKysrKwogMTEgZmlsZXMgY2hhbmdlZCwgMTY2IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9u
cygtKQoKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0FQSS9KU09iamVjdFJlZi5jcHAgYi9K
YXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYuY3BwCmluZGV4IDVlMDUzNmYuLjNmZTMwM2Eg
MTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL0FQSS9KU09iamVjdFJlZi5jcHAKKysrIGIvSmF2
YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcApAQCAtMTQxLDExICsxNDEsMTQgQEAgSlNP
YmplY3RSZWYgSlNPYmplY3RNYWtlQXJyYXkoSlNDb250ZXh0UmVmIGN0eCwgc2l6ZV90IGFyZ3Vt
ZW50Q291bnQsIGNvbnN0IEpTVmEKIAogICAgIEpTT2JqZWN0KiByZXN1bHQ7CiAgICAgaWYgKGFy
Z3VtZW50Q291bnQpIHsKLSAgICAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnTGlzdDsKLSAg
ICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBhcmd1bWVudENvdW50OyArK2kpCi0gICAgICAg
ICAgICBhcmdMaXN0LmFwcGVuZCh0b0pTKGV4ZWMsIGFyZ3VtZW50c1tpXSkpOwotCi0gICAgICAg
IHJlc3VsdCA9IGNvbnN0cnVjdEFycmF5KGV4ZWMsIGFyZ0xpc3QpOworICAgICAgICBpZiAoYXJn
dW1lbnRzKSB7CisgICAgICAgICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdMaXN0OworICAg
ICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBhcmd1bWVudENvdW50OyArK2kpCisgICAg
ICAgICAgICAgICAgYXJnTGlzdC5hcHBlbmQodG9KUyhleGVjLCBhcmd1bWVudHNbaV0pKTsKKwor
ICAgICAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0QXJyYXkoZXhlYywgYXJnTGlzdCk7CisgICAg
ICAgIH0gZWxzZQorICAgICAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0RW1wdHlBcnJheShleGVj
LCBhcmd1bWVudENvdW50KTsKICAgICB9IGVsc2UKICAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0
RW1wdHlBcnJheShleGVjKTsKIApkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvQVBJL0pTT2Jq
ZWN0UmVmLmggYi9KYXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYuaAppbmRleCAzZThiMGVi
Li5jYTUwOWZmIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYuaAor
KysgYi9KYXZhU2NyaXB0Q29yZS9BUEkvSlNPYmplY3RSZWYuaApAQCAtNDM0LDEyICs0MzQsMTEg
QEAgSlNfRVhQT1JUIEpTT2JqZWN0UmVmIEpTT2JqZWN0TWFrZUNvbnN0cnVjdG9yKEpTQ29udGV4
dFJlZiBjdHgsIEpTQ2xhc3NSZWYganNDbGEKICBAZnVuY3Rpb24KICBAYWJzdHJhY3QgQ3JlYXRl
cyBhIEphdmFTY3JpcHQgQXJyYXkgb2JqZWN0LgogIEBwYXJhbSBjdHggVGhlIGV4ZWN1dGlvbiBj
b250ZXh0IHRvIHVzZS4KLSBAcGFyYW0gYXJndW1lbnRDb3VudCBBbiBpbnRlZ2VyIGNvdW50IG9m
IHRoZSBudW1iZXIgb2YgYXJndW1lbnRzIGluIGFyZ3VtZW50cy4KLSBAcGFyYW0gYXJndW1lbnRz
IEEgSlNWYWx1ZSBhcnJheSBvZiBkYXRhIHRvIHBvcHVsYXRlIHRoZSBBcnJheSB3aXRoLiBQYXNz
IE5VTEwgaWYgYXJndW1lbnRDb3VudCBpcyAwLgorIEBwYXJhbSBhcmd1bWVudENvdW50IEFuIGlu
dGVnZXIgY291bnQgb2YgdGhlIG51bWJlciBvZiBhcmd1bWVudHMgdG8gcG9wdWxhdGUgdGhlIGFy
cmF5LgorIEBwYXJhbSBhcmd1bWVudHMgQSBKU1ZhbHVlIGFycmF5IG9mIGRhdGEgdG8gcG9wdWxh
dGUgdGhlIEFycmF5IHdpdGguIFBhc3MgTlVMTCBpZiBhcmd1bWVudENvdW50IGlzIDAgb3IgaWYg
eW91IHdhbnQgdG8gcG9wdWxhdGUgdGhlIGFycmF5IHdpdGggYXJndW1lbnRDb3VudCBlbXB0eSB2
YWx1ZXMuCiAgQHBhcmFtIGV4Y2VwdGlvbiBBIHBvaW50ZXIgdG8gYSBKU1ZhbHVlUmVmIGluIHdo
aWNoIHRvIHN0b3JlIGFuIGV4Y2VwdGlvbiwgaWYgYW55LiBQYXNzIE5VTEwgaWYgeW91IGRvIG5v
dCBjYXJlIHRvIHN0b3JlIGFuIGV4Y2VwdGlvbi4KICBAcmVzdWx0IEEgSlNPYmplY3QgdGhhdCBp
cyBhbiBBcnJheS4KLSBAZGlzY3Vzc2lvbiBUaGUgYmVoYXZpb3Igb2YgdGhpcyBmdW5jdGlvbiBk
b2VzIG5vdCBleGFjdGx5IG1hdGNoIHRoZSBiZWhhdmlvciBvZiB0aGUgYnVpbHQtaW4gQXJyYXkg
Y29uc3RydWN0b3IuIFNwZWNpZmljYWxseSwgaWYgb25lIGFyZ3VtZW50IAotIGlzIHN1cHBsaWVk
LCB0aGlzIGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgd2l0aCBvbmUgZWxlbWVudC4KKyBAZGlz
Y3Vzc2lvbiBUaGUgYmVoYXZpb3Igb2YgdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCBleGFjdGx5IG1h
dGNoIHRoZSBiZWhhdmlvciBvZiB0aGUgYnVpbHQtaW4gQXJyYXkgY29uc3RydWN0b3IuIFNwZWNp
ZmljYWxseSwgaWYgb25lIGFyZ3VtZW50IGlzIHN1cHBsaWVkLCB0aGlzIGZ1bmN0aW9uIHJldHVy
bnMgYW4gYXJyYXkgd2l0aCBvbmUgZWxlbWVudC4gVG8gZ2V0IHRoYXQgYmVoYXZpb3Igb2YgcG9w
dWxhdGluZyB3aXRoIGVtcHR5IHZhbHVlcywgcGFzcyBhIG5vbi16ZXJvIHZhbHVlIHRvIGFyZ3Vt
ZW50Q291bnQgYW5kIE5VTEwgdG8gYXJndW1lbnRzLgogICovCiBKU19FWFBPUlQgSlNPYmplY3RS
ZWYgSlNPYmplY3RNYWtlQXJyYXkoSlNDb250ZXh0UmVmIGN0eCwgc2l6ZV90IGFyZ3VtZW50Q291
bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikg
QVZBSUxBQkxFX0lOX1dFQktJVF9WRVJTSU9OXzRfMDsKIApkaWZmIC0tZ2l0IGEvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDc1NjM1OGYu
LjAwYTc3ZWQgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0OCBAQAorMjAxMC0wNi0xOCAgQ2FpbyBN
YXJjZWxvIGRlIE9saXZlaXJhIEZpbGhvICA8Y2Fpby5vbGl2ZWlyYUBvcGVuYm9zc2Eub3JnPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUVNj
cmlwdEVuZ2luZSBBUEkgc2hvdWxkIGNvbnRhaW4gYSBuZXdBcnJheSBmdW5jdGlvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkxMTUKKworICAgICAg
ICBUaGlzIGNvbW1pdCBhZGRzIHRoZSBjYXBhYmlsaXR5IG9mIHRoZSBDIEFQSSB0byBjb25zdHJ1
Y3QgYXJyYXlzIHdpdGgKKyAgICAgICAgYSBzcGVjaWZpZWQgbGVuZ3RoIGZpbGxlZCB3aXRoIGVt
cHR5IHZhbHVlcywgc2ltaWxhciB0byB0aGUgb25lCisgICAgICAgIGFyZ3VtZW50IGNvbnN0cnVj
dG9yIGluIEpTICJuZXcgQXJyYXkoNDIpIi4KKworICAgICAgICBUbyBhY2hpZXZlIHRoYXQgd2l0
aG91dCBhZGRpbmcgYSBuZXcgY29uc3RydWN0b3IsIGFsbG93IHRoZQorICAgICAgICBKU09iamVj
dE1ha2VBcnJheSgpIHRha2UgYSBOVUxMIGFyZ3VtZW50cyBldmVuIGlmIHdpdGggYXJndW1lbnRD
b3VudAorICAgICAgICBub24temVyby4gVGhpcyBzaG91bGQgbm90IGFmZmVjdCBleGlzdGluZyBj
b2RlLCBzaW5jZSBpdCB3YXMgaW52YWxpZAorICAgICAgICBpbnB1dCBiZWZvcmUgYW5kIHRha2Vu
IGZvciBncmFudGVkIGJ5IHRoZSBmdW5jdGlvbi4KKworICAgICAgICBXaXRoIHRoYXQgYWRkaXRp
b24sIGltcGxlbWVudHMgdGhlIFFTY3JpcHRFbmdpbmU6Om5ld0FycmF5KCkuIFRvIGFsbG93Cisg
ICAgICAgIHVzIHRlc3RpbmcgdGhlIGZ1bmN0aW9uYWxpdHksIHRoaXMgY29tbWl0IGFsc28gYWRk
cyBzdXBwb3J0IGZvcgorICAgICAgICBRU2NyaXB0VmFsdWU6OnByb3RvdHlwZSgpIGFuZCBwYXJ0
aWFsIHN1cHBvcnQgZm9yCisgICAgICAgIFFTY3JpcHRWYWx1ZTo6cHJvcGVydHkoKS4KKworICAg
ICAgICAqIEFQSS9KU09iamVjdFJlZi5jcHA6CisgICAgICAgIChKU09iamVjdE1ha2VBcnJheSk6
IElmIGFyZ3VtZW50cyBpcyBOVUxMIGJ1dCBoYXZlIGFyZ3VtZW50Q291bnQsIHVzZQorICAgICAg
ICB0aGUgZW1wdHkgY29uc3RydWN0b3Igd2l0aCBhIGxlbmd0aC4KKyAgICAgICAgKiBBUEkvSlNP
YmplY3RSZWYuaDogQ2hhbmdlIGRvY3VtZW50YXRpb24uCisKKyAgICAgICAgKiBxdC9hcGkvcXNj
cmlwdGVuZ2luZS5jcHA6CisgICAgICAgIChRU2NyaXB0RW5naW5lOjpuZXdBcnJheSk6CisgICAg
ICAgICogcXQvYXBpL3FzY3JpcHRlbmdpbmUuaDoKKyAgICAgICAgKiBxdC9hcGkvcXNjcmlwdGVu
Z2luZV9wLmNwcDoKKyAgICAgICAgKFFTY3JpcHRFbmdpbmVQcml2YXRlOjpuZXdBcnJheSk6IFVz
ZSBKU09iamVjdE1ha2VBcnJheSgpLgorICAgICAgICAqIHF0L2FwaS9xc2NyaXB0ZW5naW5lX3Au
aDoKKworICAgICAgICAqIHF0L2FwaS9xc2NyaXB0dmFsdWUuY3BwOgorICAgICAgICAoUVNjcmlw
dFZhbHVlOjpwcm90b3R5cGUpOgorICAgICAgICAoUVNjcmlwdFZhbHVlOjpwcm9wZXJ0eSk6Cisg
ICAgICAgICogcXQvYXBpL3FzY3JpcHR2YWx1ZS5oOgorICAgICAgICAoUVNjcmlwdFZhbHVlOjop
OiBBZGQgZW51bSBSZXNvbHZlRmxhZ3MgZnJvbSBRdFNjcmlwdCBBUEkuCisgICAgICAgICogcXQv
YXBpL3FzY3JpcHR2YWx1ZV9wLmg6CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjpwcm90
b3R5cGUpOiBJbXBsZW1lbnRhdGlvbiBvZiBwcm90b3R5cGUuCisgICAgICAgIChRU2NyaXB0VmFs
dWVQcml2YXRlOjpwcm9wZXJ0eSk6IFBhcnRpYWwgaW1wbGVtZW50YXRpb24gb2YgcHJvcGVydHku
CisKKyAgICAgICAgKiBxdC90ZXN0cy9xc2NyaXB0ZW5naW5lL3RzdF9xc2NyaXB0ZW5naW5lLmNw
cDoKKyAgICAgICAgKHRzdF9RU2NyaXB0RW5naW5lOjpuZXdBcnJheSk6IFNpbXBsZSBzYW5pdHkg
dGVzdCBvZiBuZXdBcnJheSgpLgorCiAyMDEwLTA2LTE3ICBTaHUgQ2hhbmcgIDxjaGFuZy5zaHVA
bm9raWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFu
c2VuLgpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuY3Bw
IGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuY3BwCmluZGV4IGUxYmRmNzcu
LmNkNDgxMTYgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5l
LmNwcAorKysgYi9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZS5jcHAKQEAgLTIw
Niw2ICsyMDYsMTYgQEAgUVNjcmlwdFZhbHVlIFFTY3JpcHRFbmdpbmU6Om5ld09iamVjdCgpCiB9
CiAKIC8qIQorICBDcmVhdGVzIGEgUXRTY3JpcHQgb2JqZWN0IG9mIGNsYXNzIEFycmF5IHdpdGgg
dGhlIGdpdmVuIFxhIGxlbmd0aC4KKworICBcc2EgbmV3T2JqZWN0KCkKKyovCitRU2NyaXB0VmFs
dWUgUVNjcmlwdEVuZ2luZTo6bmV3QXJyYXkodWludCBsZW5ndGgpCit7CisgICAgcmV0dXJuIFFT
Y3JpcHRWYWx1ZVByaXZhdGU6OmdldChkX3B0ci0+bmV3QXJyYXkobGVuZ3RoKSk7Cit9CisKKy8q
IQogICBSZXR1cm5zIHRoaXMgZW5naW5lJ3MgR2xvYmFsIE9iamVjdC4KIAogICBCeSBkZWZhdWx0
LCB0aGUgR2xvYmFsIE9iamVjdCBjb250YWlucyB0aGUgYnVpbHQtaW4gb2JqZWN0cyB0aGF0IGFy
ZQpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuaCBiL0ph
dmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lLmgKaW5kZXggNjUzZGZmZS4uYzAwODEw
OSAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuaAorKysg
Yi9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZS5oCkBAIC01MSw2ICs1MSw3IEBA
IHB1YmxpYzoKICAgICBRU2NyaXB0VmFsdWUgbnVsbFZhbHVlKCk7CiAgICAgUVNjcmlwdFZhbHVl
IHVuZGVmaW5lZFZhbHVlKCk7CiAgICAgUVNjcmlwdFZhbHVlIG5ld09iamVjdCgpOworICAgIFFT
Y3JpcHRWYWx1ZSBuZXdBcnJheSh1aW50IGxlbmd0aCA9IDApOwogICAgIFFTY3JpcHRWYWx1ZSBn
bG9iYWxPYmplY3QoKSBjb25zdDsKIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIFFTY3JpcHRF
bmdpbmVQcml2YXRlOwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRl
bmdpbmVfcC5jcHAgYi9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZV9wLmNwcApp
bmRleCBhNmNmNGE0Li4wNGMyYzYyIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkv
cXNjcmlwdGVuZ2luZV9wLmNwcAorKysgYi9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVu
Z2luZV9wLmNwcApAQCAtODIsNiArODIsMTEgQEAgUVNjcmlwdFZhbHVlUHJpdmF0ZSogUVNjcmlw
dEVuZ2luZVByaXZhdGU6Om5ld09iamVjdCgpIGNvbnN0CiAgICAgcmV0dXJuIG5ldyBRU2NyaXB0
VmFsdWVQcml2YXRlKHRoaXMsIEpTT2JqZWN0TWFrZShtX2NvbnRleHQsIC8qIGpzQ2xhc3MgKi8g
MCwgLyogdXNlckRhdGEgKi8gMCkpOwogfQogCitRU2NyaXB0VmFsdWVQcml2YXRlKiBRU2NyaXB0
RW5naW5lUHJpdmF0ZTo6bmV3QXJyYXkodWludCBsZW5ndGgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG5ldyBRU2NyaXB0VmFsdWVQcml2YXRlKHRoaXMsIEpTT2JqZWN0TWFrZUFycmF5KG1fY29udGV4
dCwgLyogYXJndW1lbnRDb3VudCAqLyBsZW5ndGgsIC8qIGFyZ3VtZW50cyAqLyAwLCAvKiBleGNl
cHRpb24gKi8gMCkpOworfQorCiBRU2NyaXB0VmFsdWVQcml2YXRlKiBRU2NyaXB0RW5naW5lUHJp
dmF0ZTo6Z2xvYmFsT2JqZWN0KCkgY29uc3QKIHsKICAgICBKU09iamVjdFJlZiBnbG9iYWxPYmpl
Y3QgPSBKU0NvbnRleHRHZXRHbG9iYWxPYmplY3QobV9jb250ZXh0KTsKZGlmZiAtLWdpdCBhL0ph
dmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lX3AuaCBiL0phdmFTY3JpcHRDb3JlL3F0
L2FwaS9xc2NyaXB0ZW5naW5lX3AuaAppbmRleCA5MDgzZjdkLi40MGFlYzE0IDEwMDY0NAotLS0g
YS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZV9wLmgKKysrIGIvSmF2YVNjcmlw
dENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmVfcC5oCkBAIC01Nyw2ICs1Nyw3IEBAIHB1YmxpYzoK
ICAgICBpbmxpbmUgSlNWYWx1ZVJlZiBtYWtlSlNWYWx1ZShRU2NyaXB0VmFsdWU6OlNwZWNpYWxW
YWx1ZSB2YWx1ZSkgY29uc3Q7CiAKICAgICBRU2NyaXB0VmFsdWVQcml2YXRlKiBuZXdPYmplY3Qo
KSBjb25zdDsKKyAgICBRU2NyaXB0VmFsdWVQcml2YXRlKiBuZXdBcnJheSh1aW50IGxlbmd0aCkg
Y29uc3Q7CiAgICAgUVNjcmlwdFZhbHVlUHJpdmF0ZSogZ2xvYmFsT2JqZWN0KCkgY29uc3Q7CiAK
ICAgICBpbmxpbmUgUVNjcmlwdFN0cmluZ1ByaXZhdGUqIHRvU3RyaW5nSGFuZGxlKGNvbnN0IFFT
dHJpbmcmIHN0cikgY29uc3Q7CmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNj
cmlwdHZhbHVlLmNwcCBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWUuY3BwCmlu
ZGV4IDIyZmY4YmUuLjMwMjcwMDQgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9x
c2NyaXB0dmFsdWUuY3BwCisrKyBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWUu
Y3BwCkBAIC01OTksMyArNTk5LDM1IEBAIGJvb2wgUVNjcmlwdFZhbHVlOjppbnN0YW5jZU9mKGNv
bnN0IFFTY3JpcHRWYWx1ZSYgb3RoZXIpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGRfcHRyLT5pbnN0
YW5jZU9mKFFTY3JpcHRWYWx1ZVByaXZhdGU6OmdldChvdGhlcikpOwogfQorCisvKiEKKyAgSWYg
dGhpcyBRU2NyaXB0VmFsdWUgaXMgYW4gb2JqZWN0LCByZXR1cm5zIHRoZSBpbnRlcm5hbCBwcm90
b3R5cGUKKyAgKFxje19fcHJvdG9fX30gcHJvcGVydHkpIG9mIHRoaXMgb2JqZWN0OyBvdGhlcndp
c2UgcmV0dXJucyBhbgorICBpbnZhbGlkIFFTY3JpcHRWYWx1ZS4KKworICBcc2Egc2V0UHJvdG90
eXBlKCksIGlzT2JqZWN0KCkKKyovCitRU2NyaXB0VmFsdWUgUVNjcmlwdFZhbHVlOjpwcm90b3R5
cGUoKSBjb25zdAoreworICAgIHJldHVybiBRU2NyaXB0VmFsdWVQcml2YXRlOjpnZXQoZF9wdHIt
PnByb3RvdHlwZSgpKTsKK30KKworLyohCisgIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoaXMgUVNj
cmlwdFZhbHVlJ3MgcHJvcGVydHkgd2l0aCB0aGUgZ2l2ZW4gXGEgbmFtZSwKKyAgdXNpbmcgdGhl
IGdpdmVuIFxhIG1vZGUgdG8gcmVzb2x2ZSB0aGUgcHJvcGVydHkuCisKKyAgSWYgbm8gc3VjaCBw
cm9wZXJ0eSBleGlzdHMsIGFuIGludmFsaWQgUVNjcmlwdFZhbHVlIGlzIHJldHVybmVkLgorCisg
IElmIHRoZSBwcm9wZXJ0eSBpcyBpbXBsZW1lbnRlZCB1c2luZyBhIGdldHRlciBmdW5jdGlvbiAo
aS5lLiBoYXMgdGhlCisgIFByb3BlcnR5R2V0dGVyIGZsYWcgc2V0KSwgY2FsbGluZyBwcm9wZXJ0
eSgpIGhhcyBzaWRlLWVmZmVjdHMgb24gdGhlCisgIHNjcmlwdCBlbmdpbmUsIHNpbmNlIHRoZSBn
ZXR0ZXIgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQgKHBvc3NpYmx5CisgIHJlc3VsdGluZyBpbiBh
biB1bmNhdWdodCBzY3JpcHQgZXhjZXB0aW9uKS4gSWYgYW4gZXhjZXB0aW9uCisgIG9jY3VycmVk
LCBwcm9wZXJ0eSgpIHJldHVybnMgdGhlIHZhbHVlIHRoYXQgd2FzIHRocm93biAodHlwaWNhbGx5
CisgIGFuIFxje0Vycm9yfSBvYmplY3QpLgorCisgIFxzYSBzZXRQcm9wZXJ0eSgpLCBwcm9wZXJ0
eUZsYWdzKCksIFFTY3JpcHRWYWx1ZUl0ZXJhdG9yCisqLworUVNjcmlwdFZhbHVlIFFTY3JpcHRW
YWx1ZTo6cHJvcGVydHkoY29uc3QgUVN0cmluZyYgbmFtZSwgY29uc3QgUmVzb2x2ZUZsYWdzJiBt
b2RlKSBjb25zdAoreworICAgIHJldHVybiBRU2NyaXB0VmFsdWVQcml2YXRlOjpnZXQoZF9wdHIt
PnByb3BlcnR5KG5hbWUsIG1vZGUpKTsKK30KZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0
L2FwaS9xc2NyaXB0dmFsdWUuaCBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWUu
aAppbmRleCA2YzQyNDI5Li5iZTA1ZTMzIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9xdC9h
cGkvcXNjcmlwdHZhbHVlLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1
ZS5oCkBAIC0zMiw3ICszMiwxNCBAQCB0eXBlZGVmIFFMaXN0PFFTY3JpcHRWYWx1ZT4gUVNjcmlw
dFZhbHVlTGlzdDsKIHR5cGVkZWYgZG91YmxlIHFzcmVhbDsKIAogY2xhc3MgUVNjcmlwdFZhbHVl
IHsKLXB1YmxpYzogICAgCitwdWJsaWM6CisgICAgZW51bSBSZXNvbHZlRmxhZyB7CisgICAgICAg
IFJlc29sdmVMb2NhbCAgICAgICAgPSAweDAwLAorICAgICAgICBSZXNvbHZlUHJvdG90eXBlICAg
ID0gMHgwMQorICAgIH07CisKKyAgICBRX0RFQ0xBUkVfRkxBR1MoUmVzb2x2ZUZsYWdzLCBSZXNv
bHZlRmxhZykKKwogICAgIGVudW0gU3BlY2lhbFZhbHVlIHsKICAgICAgICAgTnVsbFZhbHVlLAog
ICAgICAgICBVbmRlZmluZWRWYWx1ZQpAQCAtNjMsNiArNzAsMTAgQEAgcHVibGljOgogICAgIGJv
b2wgc3RyaWN0bHlFcXVhbHMoY29uc3QgUVNjcmlwdFZhbHVlJiBvdGhlcikgY29uc3Q7CiAgICAg
Ym9vbCBpbnN0YW5jZU9mKGNvbnN0IFFTY3JpcHRWYWx1ZSYgb3RoZXIpIGNvbnN0OwogCisgICAg
UVNjcmlwdFZhbHVlIHByb3RvdHlwZSgpIGNvbnN0OworCisgICAgUVNjcmlwdFZhbHVlIHByb3Bl
cnR5KGNvbnN0IFFTdHJpbmcmIG5hbWUsIGNvbnN0IFJlc29sdmVGbGFncyYgbW9kZSA9IFJlc29s
dmVQcm90b3R5cGUpIGNvbnN0OworCiAgICAgUVNjcmlwdEVuZ2luZSogZW5naW5lKCkgY29uc3Q7
CiAKICAgICBib29sIGlzVmFsaWQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3Jl
L3F0L2FwaS9xc2NyaXB0dmFsdWVfcC5oIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2
YWx1ZV9wLmgKaW5kZXggMWJiOGE3Ny4uOTBkYTIwYyAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENv
cmUvcXQvYXBpL3FzY3JpcHR2YWx1ZV9wLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3Fz
Y3JpcHR2YWx1ZV9wLmgKQEAgLTExNCw2ICsxMTQsOCBAQCBwdWJsaWM6CiAgICAgaW5saW5lIGJv
b2wgZXF1YWxzKFFTY3JpcHRWYWx1ZVByaXZhdGUqIG90aGVyKTsKICAgICBpbmxpbmUgYm9vbCBz
dHJpY3RseUVxdWFscyhRU2NyaXB0VmFsdWVQcml2YXRlKiBvdGhlcik7CiAgICAgaW5saW5lIGJv
b2wgaW5zdGFuY2VPZihRU2NyaXB0VmFsdWVQcml2YXRlKiBvdGhlcik7CisgICAgaW5saW5lIFFT
Y3JpcHRWYWx1ZVByaXZhdGUqIHByb3RvdHlwZSgpOworICAgIGlubGluZSBRU2NyaXB0VmFsdWVQ
cml2YXRlKiBwcm9wZXJ0eShjb25zdCBRU3RyaW5nJiBuYW1lLCBjb25zdCBRU2NyaXB0VmFsdWU6
OlJlc29sdmVGbGFncyYgbW9kZSk7CiAgICAgaW5saW5lIGJvb2wgYXNzaWduRW5naW5lKFFTY3Jp
cHRFbmdpbmVQcml2YXRlKiBlbmdpbmUpOwogCiAgICAgaW5saW5lIFFTY3JpcHRWYWx1ZVByaXZh
dGUqIGNhbGwoY29uc3QgUVNjcmlwdFZhbHVlUHJpdmF0ZSogLCBjb25zdCBRU2NyaXB0VmFsdWVM
aXN0JiBhcmdzKTsKQEAgLTY4Miw2ICs2ODQsMzAgQEAgaW5saW5lIGJvb2wgUVNjcmlwdFZhbHVl
UHJpdmF0ZTo6aW5zdGFuY2VPZihRU2NyaXB0VmFsdWVQcml2YXRlKiBvdGhlcikKICAgICByZXR1
cm4gSlNWYWx1ZUlzSW5zdGFuY2VPZkNvbnN0cnVjdG9yKCptX2VuZ2luZSwgKnRoaXMsICpvdGhl
ciwgLyogZXhjZXB0aW9uICovIDApOwogfQogCitpbmxpbmUgUVNjcmlwdFZhbHVlUHJpdmF0ZSog
UVNjcmlwdFZhbHVlUHJpdmF0ZTo6cHJvdG90eXBlKCkKK3sKKyAgICBpZiAoIWlzT2JqZWN0KCkp
CisgICAgICAgIHJldHVybiBuZXcgUVNjcmlwdFZhbHVlUHJpdmF0ZTsKKworICAgIHJldHVybiBu
ZXcgUVNjcmlwdFZhbHVlUHJpdmF0ZShtX2VuZ2luZS5jb25zdERhdGEoKSwgSlNPYmplY3RHZXRQ
cm90b3R5cGUoKm1fZW5naW5lLCAqdGhpcykpOworfQorCitpbmxpbmUgUVNjcmlwdFZhbHVlUHJp
dmF0ZSogUVNjcmlwdFZhbHVlUHJpdmF0ZTo6cHJvcGVydHkoY29uc3QgUVN0cmluZyYgbmFtZSwg
Y29uc3QgUVNjcmlwdFZhbHVlOjpSZXNvbHZlRmxhZ3MmIG1vZGUpCit7CisgICAgaWYgKCFpc09i
amVjdCgpKQorICAgICAgICByZXR1cm4gbmV3IFFTY3JpcHRWYWx1ZVByaXZhdGU7CisKKyAgICBp
ZiAobW9kZSAmIFFTY3JpcHRWYWx1ZTo6UmVzb2x2ZUxvY2FsKSB7CisgICAgICAgIHFXYXJuaW5n
KCJRU2NyaXB0VmFsdWU6OnByb3BlcnR5KCk6IFJlc29sdmVMb2NhbCBub3Qgc3VwcG9ydGVkIHll
dC4iKTsKKyAgICAgICAgcmV0dXJuIG5ldyBRU2NyaXB0VmFsdWVQcml2YXRlOworICAgIH0KKwor
ICAgIEpTUmV0YWluUHRyPEpTU3RyaW5nUmVmPiBuYW1lUmVmKEFkb3B0LCBRU2NyaXB0Q29udmVy
dGVyOjp0b1N0cmluZyhuYW1lKSk7CisgICAgUVNjcmlwdFZhbHVlUHJpdmF0ZSogcmVzdWx0ID0g
bmV3IFFTY3JpcHRWYWx1ZVByaXZhdGUobV9lbmdpbmUuY29uc3REYXRhKCksIEpTT2JqZWN0R2V0
UHJvcGVydHkoKm1fZW5naW5lLCAqdGhpcywgbmFtZVJlZi5nZXQoKSwgLyogZXhjZXB0aW9uICov
IDApKTsKKworICAgIHJldHVybiByZXN1bHQ7Cit9CisKIC8qIQogICBUcmllcyB0byBhc3NpZ24g
XGEgZW5naW5lIHRvIHRoaXMgdmFsdWUuIFJldHVybnMgdHJ1ZSBvbiBzdWNjZXNzOyBvdGhlcndp
c2UgcmV0dXJucyBmYWxzZS4KICovCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9xdC90ZXN0
cy9xc2NyaXB0ZW5naW5lL3RzdF9xc2NyaXB0ZW5naW5lLmNwcCBiL0phdmFTY3JpcHRDb3JlL3F0
L3Rlc3RzL3FzY3JpcHRlbmdpbmUvdHN0X3FzY3JpcHRlbmdpbmUuY3BwCmluZGV4IGQ1NDVmMzcu
LjE2NGI2NzggMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHRlbmdp
bmUvdHN0X3FzY3JpcHRlbmdpbmUuY3BwCisrKyBiL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3Fz
Y3JpcHRlbmdpbmUvdHN0X3FzY3JpcHRlbmdpbmUuY3BwCkBAIC00Nyw2ICs0Nyw3IEBAIHByaXZh
dGUgc2xvdHM6CiAgICAgdm9pZCBjaGVja1N5bnRheCgpOwogICAgIHZvaWQgdG9PYmplY3QoKTsK
ICAgICB2b2lkIHRvT2JqZWN0VHdvRW5naW5lcygpOworICAgIHZvaWQgbmV3QXJyYXkoKTsKIH07
CiAKIC8qIEV2YWx1YXRpbmcgYSBzY3JpcHQgdGhhdCB0aHJvdyBhbiB1bmhhbmRsZWQgZXhjZXB0
aW9uIHNob3VsZCByZXR1cm4gYW4gaW52YWxpZCB2YWx1ZS4gKi8KQEAgLTQwOSw1ICs0MTAsMjcg
QEAgdm9pZCB0c3RfUVNjcmlwdEVuZ2luZTo6dG9PYmplY3RUd29FbmdpbmVzKCkKICAgICB9CiB9
CiAKK3ZvaWQgdHN0X1FTY3JpcHRFbmdpbmU6Om5ld0FycmF5KCkKK3sKKyAgICBRU2NyaXB0RW5n
aW5lIGVuZzsKKyAgICBRU2NyaXB0VmFsdWUgYXJyYXkgPSBlbmcubmV3QXJyYXkoKTsKKyAgICBR
Q09NUEFSRShhcnJheS5pc1ZhbGlkKCksIHRydWUpOworICAgIC8vIFFDT01QQVJFKGFycmF5Lmlz
QXJyYXkoKSwgdHJ1ZSk7CisgICAgUUNPTVBBUkUoYXJyYXkuaXNPYmplY3QoKSwgdHJ1ZSk7Cisg
ICAgUVZFUklGWSghYXJyYXkuaXNGdW5jdGlvbigpKTsKKyAgICAvLyBRQ09NUEFSRShhcnJheS5z
Y3JpcHRDbGFzcygpLCAoUVNjcmlwdENsYXNzKikwKTsKKworICAgIC8vIFByb3RvdHlwZSBzaG91
bGQgYmUgQXJyYXkucHJvdG90eXBlLgorICAgIFFDT01QQVJFKGFycmF5LnByb3RvdHlwZSgpLmlz
VmFsaWQoKSwgdHJ1ZSk7CisgICAgLy8gUUNPTVBBUkUoYXJyYXkucHJvdG90eXBlKCkuaXNBcnJh
eSgpLCB0cnVlKTsKKyAgICBRQ09NUEFSRShhcnJheS5wcm90b3R5cGUoKS5zdHJpY3RseUVxdWFs
cyhlbmcuZXZhbHVhdGUoIkFycmF5LnByb3RvdHlwZSIpKSwgdHJ1ZSk7CisKKyAgICBRU2NyaXB0
VmFsdWUgYXJyYXlXaXRoU2l6ZSA9IGVuZy5uZXdBcnJheSg0Mik7CisgICAgUUNPTVBBUkUoYXJy
YXlXaXRoU2l6ZS5pc1ZhbGlkKCksIHRydWUpOworICAgIC8vIFFDT01QQVJFKGFycmF5V2l0aFNp
emUuaXNBcnJheSgpLCB0cnVlKTsKKyAgICBRQ09NUEFSRShhcnJheVdpdGhTaXplLmlzT2JqZWN0
KCksIHRydWUpOworICAgIFFDT01QQVJFKGFycmF5V2l0aFNpemUucHJvcGVydHkoImxlbmd0aCIp
LnRvSW50MzIoKSwgNDIpOworfQorCiBRVEVTVF9NQUlOKHRzdF9RU2NyaXB0RW5naW5lKQogI2lu
Y2x1ZGUgInRzdF9xc2NyaXB0ZW5naW5lLm1vYyIKLS0gCjEuNy4wLjEKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59969</attachid>
            <date>2010-06-28 18:19:28 -0700</date>
            <delta_ts>2010-06-28 20:04:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39115-20100628221922.patch</filename>
            <type>text/plain</type>
            <size>5418</size>
            <attacher name="Caio Marcelo de Oliveira Filho">cmarcelo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCAyZjdkODcyODA4NTFmZjU2ZjEyYTJhMDQ4NTc0YmEzNDk2YTI1ZmJiLi5j
MTE0Njc3MmUzY2M5NmRmZmRmM2Q4ODkwYjJjYWMwNjIwNmU0NDhlIDEwMDY0NAotLS0gYS9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTkgQEAKKzIwMTAtMDYtMjggIENhaW8gTWFyY2VsbyBkZSBPbGl2ZWlyYSBGaWxobyAg
PGNhaW8ub2xpdmVpcmFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFFTY3JpcHRFbmdpbmUgQVBJIHNob3VsZCBjb250
YWluIGEgbmV3QXJyYXkgZnVuY3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTM5MTE1CisKKyAgICAgICAgKiBxdC9hcGkvcXNjcmlwdGVuZ2luZS5j
cHA6CisgICAgICAgIChRU2NyaXB0RW5naW5lOjpuZXdBcnJheSk6CisgICAgICAgICogcXQvYXBp
L3FzY3JpcHRlbmdpbmUuaDoKKyAgICAgICAgKiBxdC9hcGkvcXNjcmlwdGVuZ2luZV9wLmNwcDoK
KyAgICAgICAgKFFTY3JpcHRFbmdpbmVQcml2YXRlOjpuZXdBcnJheSk6CisgICAgICAgICogcXQv
YXBpL3FzY3JpcHRlbmdpbmVfcC5oOgorICAgICAgICAqIHF0L3Rlc3RzL3FzY3JpcHRlbmdpbmUv
dHN0X3FzY3JpcHRlbmdpbmUuY3BwOgorICAgICAgICAodHN0X1FTY3JpcHRFbmdpbmU6Om5ld0Fy
cmF5KToKKwogMjAxMC0wNi0yOCAgSm9obiBHcmVnZyAgPGpvaG5ueWdAZ29vZ2xlLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBLZW50IFRhbXVyYS4KZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRD
b3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lLmNwcCBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2Ny
aXB0ZW5naW5lLmNwcAppbmRleCBlMWJkZjc3ZDk5MzlmNWY2ZGYzZDM1NjNiZjczZmIzZWZiMWQ4
YzE2Li5jZDQ4MTE2NGFiMGEyMjk1MThkZTg2ZjdkNzdhZjE5N2RiMWJlNjc3IDEwMDY0NAotLS0g
YS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVuZ2luZS5jcHAKKysrIGIvSmF2YVNjcmlw
dENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuY3BwCkBAIC0yMDYsNiArMjA2LDE2IEBAIFFTY3Jp
cHRWYWx1ZSBRU2NyaXB0RW5naW5lOjpuZXdPYmplY3QoKQogfQogCiAvKiEKKyAgQ3JlYXRlcyBh
IFF0U2NyaXB0IG9iamVjdCBvZiBjbGFzcyBBcnJheSB3aXRoIHRoZSBnaXZlbiBcYSBsZW5ndGgu
CisKKyAgXHNhIG5ld09iamVjdCgpCisqLworUVNjcmlwdFZhbHVlIFFTY3JpcHRFbmdpbmU6Om5l
d0FycmF5KHVpbnQgbGVuZ3RoKQoreworICAgIHJldHVybiBRU2NyaXB0VmFsdWVQcml2YXRlOjpn
ZXQoZF9wdHItPm5ld0FycmF5KGxlbmd0aCkpOworfQorCisvKiEKICAgUmV0dXJucyB0aGlzIGVu
Z2luZSdzIEdsb2JhbCBPYmplY3QuCiAKICAgQnkgZGVmYXVsdCwgdGhlIEdsb2JhbCBPYmplY3Qg
Y29udGFpbnMgdGhlIGJ1aWx0LWluIG9iamVjdHMgdGhhdCBhcmUKZGlmZiAtLWdpdCBhL0phdmFT
Y3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lLmggYi9KYXZhU2NyaXB0Q29yZS9xdC9hcGkv
cXNjcmlwdGVuZ2luZS5oCmluZGV4IDY1M2RmZmU1OTdkZmExNmE2YzZlODFkNWZlYjZjOGQzYTA3
MzkwNGYuLmMwMDgxMDk0OWRlYTNjZjJmZTZlYjdmNGQ5OTdlNGQ0YTkxNTc5MGMgMTAwNjQ0Ci0t
LSBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lLmgKKysrIGIvSmF2YVNjcmlw
dENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmUuaApAQCAtNTEsNiArNTEsNyBAQCBwdWJsaWM6CiAg
ICAgUVNjcmlwdFZhbHVlIG51bGxWYWx1ZSgpOwogICAgIFFTY3JpcHRWYWx1ZSB1bmRlZmluZWRW
YWx1ZSgpOwogICAgIFFTY3JpcHRWYWx1ZSBuZXdPYmplY3QoKTsKKyAgICBRU2NyaXB0VmFsdWUg
bmV3QXJyYXkodWludCBsZW5ndGggPSAwKTsKICAgICBRU2NyaXB0VmFsdWUgZ2xvYmFsT2JqZWN0
KCkgY29uc3Q7CiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBRU2NyaXB0RW5naW5lUHJpdmF0
ZTsKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lX3AuY3Bw
IGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmVfcC5jcHAKaW5kZXggZmQ3OTc4
YjFjMmZhZjEwYzM0YTVjODQxYmVlMTBhZDgzNzM0YzRlNy4uODQ5NWNmN2Q3YTYxZDIxOWQ1YjUx
MjFjN2E2ZGM1Y2U4MjI3NDdjOSAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3Fz
Y3JpcHRlbmdpbmVfcC5jcHAKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdp
bmVfcC5jcHAKQEAgLTgyLDYgKzgyLDE4IEBAIFFTY3JpcHRWYWx1ZVByaXZhdGUqIFFTY3JpcHRF
bmdpbmVQcml2YXRlOjpuZXdPYmplY3QoKSBjb25zdAogICAgIHJldHVybiBuZXcgUVNjcmlwdFZh
bHVlUHJpdmF0ZSh0aGlzLCBKU09iamVjdE1ha2UobV9jb250ZXh0LCAvKiBqc0NsYXNzICovIDAs
IC8qIHVzZXJEYXRhICovIDApKTsKIH0KIAorUVNjcmlwdFZhbHVlUHJpdmF0ZSogUVNjcmlwdEVu
Z2luZVByaXZhdGU6Om5ld0FycmF5KHVpbnQgbGVuZ3RoKSBjb25zdAoreworICAgIEpTT2JqZWN0
UmVmIGFycmF5ID0gSlNPYmplY3RNYWtlQXJyYXkobV9jb250ZXh0LCAvKiBhcmd1bWVudENvdW50
ICovIDAsIC8qIGFyZ3VtZW50cyAqLyAwLCAvKiBleGNlcHRpb24gKi8gMCk7CisKKyAgICBpZiAo
bGVuZ3RoID4gMCkgeworICAgICAgICBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4gbGVuZ3RoUmVm
KEFkb3B0LCBKU1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygibGVuZ3RoIikpOworICAgICAg
ICBKU09iamVjdFNldFByb3BlcnR5KG1fY29udGV4dCwgYXJyYXksIGxlbmd0aFJlZi5nZXQoKSwg
SlNWYWx1ZU1ha2VOdW1iZXIobV9jb250ZXh0LCBsZW5ndGgpLCBrSlNQcm9wZXJ0eUF0dHJpYnV0
ZU5vbmUsIC8qIGV4Y2VwdGlvbiAqLyAwKTsKKyAgICB9CisKKyAgICByZXR1cm4gbmV3IFFTY3Jp
cHRWYWx1ZVByaXZhdGUodGhpcywgYXJyYXkpOworfQorCiBRU2NyaXB0VmFsdWVQcml2YXRlKiBR
U2NyaXB0RW5naW5lUHJpdmF0ZTo6Z2xvYmFsT2JqZWN0KCkgY29uc3QKIHsKICAgICBKU09iamVj
dFJlZiBnbG9iYWxPYmplY3QgPSBKU0NvbnRleHRHZXRHbG9iYWxPYmplY3QobV9jb250ZXh0KTsK
ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lX3AuaCBiL0ph
dmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0ZW5naW5lX3AuaAppbmRleCA5MDgzZjdkYzJlN2Yy
MDRkYTkwZDBlODUxNjdhMjhiOTY0NWI3MTI5Li40MGFlYzE0YTBlM2MwNGE5NTYxYzJjOGRkZmIx
MGY4Y2ZhMTk0MzEwIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdGVu
Z2luZV9wLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHRlbmdpbmVfcC5oCkBA
IC01Nyw2ICs1Nyw3IEBAIHB1YmxpYzoKICAgICBpbmxpbmUgSlNWYWx1ZVJlZiBtYWtlSlNWYWx1
ZShRU2NyaXB0VmFsdWU6OlNwZWNpYWxWYWx1ZSB2YWx1ZSkgY29uc3Q7CiAKICAgICBRU2NyaXB0
VmFsdWVQcml2YXRlKiBuZXdPYmplY3QoKSBjb25zdDsKKyAgICBRU2NyaXB0VmFsdWVQcml2YXRl
KiBuZXdBcnJheSh1aW50IGxlbmd0aCkgY29uc3Q7CiAgICAgUVNjcmlwdFZhbHVlUHJpdmF0ZSog
Z2xvYmFsT2JqZWN0KCkgY29uc3Q7CiAKICAgICBpbmxpbmUgUVNjcmlwdFN0cmluZ1ByaXZhdGUq
IHRvU3RyaW5nSGFuZGxlKGNvbnN0IFFTdHJpbmcmIHN0cikgY29uc3Q7CmRpZmYgLS1naXQgYS9K
YXZhU2NyaXB0Q29yZS9xdC90ZXN0cy9xc2NyaXB0ZW5naW5lL3RzdF9xc2NyaXB0ZW5naW5lLmNw
cCBiL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHRlbmdpbmUvdHN0X3FzY3JpcHRlbmdp
bmUuY3BwCmluZGV4IGQ1NDVmMzcyNGU2NjdhZDEyMzNjZDM0NGYxYzA4NGY5MmY0ZDY5NTcuLjE2
NGI2Nzg0NTY2YzNhNGVkMzNlODZiMTA3NmI4NWU0ODU1OTg1NjEgMTAwNjQ0Ci0tLSBhL0phdmFT
Y3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHRlbmdpbmUvdHN0X3FzY3JpcHRlbmdpbmUuY3BwCisr
KyBiL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHRlbmdpbmUvdHN0X3FzY3JpcHRlbmdp
bmUuY3BwCkBAIC00Nyw2ICs0Nyw3IEBAIHByaXZhdGUgc2xvdHM6CiAgICAgdm9pZCBjaGVja1N5
bnRheCgpOwogICAgIHZvaWQgdG9PYmplY3QoKTsKICAgICB2b2lkIHRvT2JqZWN0VHdvRW5naW5l
cygpOworICAgIHZvaWQgbmV3QXJyYXkoKTsKIH07CiAKIC8qIEV2YWx1YXRpbmcgYSBzY3JpcHQg
dGhhdCB0aHJvdyBhbiB1bmhhbmRsZWQgZXhjZXB0aW9uIHNob3VsZCByZXR1cm4gYW4gaW52YWxp
ZCB2YWx1ZS4gKi8KQEAgLTQwOSw1ICs0MTAsMjcgQEAgdm9pZCB0c3RfUVNjcmlwdEVuZ2luZTo6
dG9PYmplY3RUd29FbmdpbmVzKCkKICAgICB9CiB9CiAKK3ZvaWQgdHN0X1FTY3JpcHRFbmdpbmU6
Om5ld0FycmF5KCkKK3sKKyAgICBRU2NyaXB0RW5naW5lIGVuZzsKKyAgICBRU2NyaXB0VmFsdWUg
YXJyYXkgPSBlbmcubmV3QXJyYXkoKTsKKyAgICBRQ09NUEFSRShhcnJheS5pc1ZhbGlkKCksIHRy
dWUpOworICAgIC8vIFFDT01QQVJFKGFycmF5LmlzQXJyYXkoKSwgdHJ1ZSk7CisgICAgUUNPTVBB
UkUoYXJyYXkuaXNPYmplY3QoKSwgdHJ1ZSk7CisgICAgUVZFUklGWSghYXJyYXkuaXNGdW5jdGlv
bigpKTsKKyAgICAvLyBRQ09NUEFSRShhcnJheS5zY3JpcHRDbGFzcygpLCAoUVNjcmlwdENsYXNz
KikwKTsKKworICAgIC8vIFByb3RvdHlwZSBzaG91bGQgYmUgQXJyYXkucHJvdG90eXBlLgorICAg
IFFDT01QQVJFKGFycmF5LnByb3RvdHlwZSgpLmlzVmFsaWQoKSwgdHJ1ZSk7CisgICAgLy8gUUNP
TVBBUkUoYXJyYXkucHJvdG90eXBlKCkuaXNBcnJheSgpLCB0cnVlKTsKKyAgICBRQ09NUEFSRShh
cnJheS5wcm90b3R5cGUoKS5zdHJpY3RseUVxdWFscyhlbmcuZXZhbHVhdGUoIkFycmF5LnByb3Rv
dHlwZSIpKSwgdHJ1ZSk7CisKKyAgICBRU2NyaXB0VmFsdWUgYXJyYXlXaXRoU2l6ZSA9IGVuZy5u
ZXdBcnJheSg0Mik7CisgICAgUUNPTVBBUkUoYXJyYXlXaXRoU2l6ZS5pc1ZhbGlkKCksIHRydWUp
OworICAgIC8vIFFDT01QQVJFKGFycmF5V2l0aFNpemUuaXNBcnJheSgpLCB0cnVlKTsKKyAgICBR
Q09NUEFSRShhcnJheVdpdGhTaXplLmlzT2JqZWN0KCksIHRydWUpOworICAgIFFDT01QQVJFKGFy
cmF5V2l0aFNpemUucHJvcGVydHkoImxlbmd0aCIpLnRvSW50MzIoKSwgNDIpOworfQorCiBRVEVT
VF9NQUlOKHRzdF9RU2NyaXB0RW5naW5lKQogI2luY2x1ZGUgInRzdF9xc2NyaXB0ZW5naW5lLm1v
YyIK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60242</attachid>
            <date>2010-07-01 07:04:46 -0700</date>
            <delta_ts>2010-07-01 11:26:32 -0700</delta_ts>
            <desc>Simple benchmark test</desc>
            <filename>0001-Add-simple-benchmark-test-for-QScriptEngine-newArray.patch</filename>
            <type>text/plain</type>
            <size>3708</size>
            <attacher name="Caio Marcelo de Oliveira Filho">cmarcelo</attacher>
            
              <data encoding="base64">RnJvbSBlNmYzNzVlZjJhMzQzY2E1MjM4NTI2ZTFmZTBjMzgzMzYyOTI4ZTg4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBDYWlvIE1hcmNlbG8gZGUgT2xpdmVpcmEgRmlsaG8gPGNhaW8u
b2xpdmVpcmFAb3BlbmJvc3NhLm9yZz4KRGF0ZTogVGh1LCAxIEp1bCAyMDEwIDEwOjU5OjMzIC0w
MzAwClN1YmplY3Q6IFtQQVRDSF0gQWRkIHNpbXBsZSBiZW5jaG1hcmsgdGVzdCBmb3IgUVNjcmlw
dEVuZ2luZTo6bmV3QXJyYXkoKQoKLS0tCiBKYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgMTUgKysrKysrKysrKysrKwogLi4uL2JlbmNobWFya3Mv
cXNjcmlwdGVuZ2luZS90c3RfcXNjcmlwdGVuZ2luZS5jcHAgfCAgIDIyICsrKysrKysrKysrKysr
KysrKysrCiBXZWJLaXRUb29scy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgMTAgKysrKysrKysrCiBXZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3N0eWxlL2No
ZWNrZXIucHkgICAgICB8ICAgIDEgKwogNCBmaWxlcyBjaGFuZ2VkLCA0OCBpbnNlcnRpb25zKCsp
LCAwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBi
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAwMjZhZjk2Li5mOWQ1MzRhIDEwMDY0NAot
LS0gYS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTAtMDctMDEgIENhaW8gTWFyY2VsbyBkZSBPbGl2ZWly
YSBGaWxobyAgPGNhaW8ub2xpdmVpcmFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFFTY3JpcHRFbmdpbmUgQVBJIHNo
b3VsZCBjb250YWluIGEgbmV3QXJyYXkgZnVuY3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTE1CisKKyAgICAgICAgQWRkIGEgc2ltcGxlIGJl
bmNobWFyayB0ZXN0IGZvciBRU2NyaXB0RW5naW5lOjpuZXdBcnJheSgpLiBUaGlzCisgICAgICAg
IGNhbiBiZSB1c2VkIGxhdGVyIHRvIGNvbXBhcmUgYWdhaW5zdCBRdCByZXBvJ3MgUXRTY3JpcHQK
KyAgICAgICAgaW1wbGVtZW50YXRpb24sIHdoaWNoIGRvZXNuJ3QgdXNlIEpTQyBDIEFQSS4KKwor
ICAgICAgICAqIHF0L2JlbmNobWFya3MvcXNjcmlwdGVuZ2luZS90c3RfcXNjcmlwdGVuZ2luZS5j
cHA6CisgICAgICAgICh0c3RfUVNjcmlwdEVuZ2luZTo6bmV3QXJyYXlfZGF0YSk6CisgICAgICAg
ICh0c3RfUVNjcmlwdEVuZ2luZTo6bmV3QXJyYXkpOgorCiAyMDEwLTA2LTMwICBEYXJpbiBBZGxl
ciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpk
aWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcXQvYmVuY2htYXJrcy9xc2NyaXB0ZW5naW5lL3Rz
dF9xc2NyaXB0ZW5naW5lLmNwcCBiL0phdmFTY3JpcHRDb3JlL3F0L2JlbmNobWFya3MvcXNjcmlw
dGVuZ2luZS90c3RfcXNjcmlwdGVuZ2luZS5jcHAKaW5kZXggMGM0NDdjNi4uMWQ1YjBlYyAxMDA2
NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvYmVuY2htYXJrcy9xc2NyaXB0ZW5naW5lL3RzdF9x
c2NyaXB0ZW5naW5lLmNwcAorKysgYi9KYXZhU2NyaXB0Q29yZS9xdC9iZW5jaG1hcmtzL3FzY3Jp
cHRlbmdpbmUvdHN0X3FzY3JpcHRlbmdpbmUuY3BwCkBAIC0zNyw2ICszNyw4IEBAIHByaXZhdGUg
c2xvdHM6CiAgICAgdm9pZCB1bmRlZmluZWRWYWx1ZSgpOwogICAgIHZvaWQgZ2xvYmFsT2JqZWN0
KCk7CiAgICAgdm9pZCB0b1N0cmluZ0hhbmRsZSgpOworICAgIHZvaWQgbmV3QXJyYXlfZGF0YSgp
OworICAgIHZvaWQgbmV3QXJyYXkoKTsKIH07CiAKIHZvaWQgdHN0X1FTY3JpcHRFbmdpbmU6OmNo
ZWNrU3ludGF4X2RhdGEoKQpAQCAtMTM4LDUgKzE0MCwyNSBAQCB2b2lkIHRzdF9RU2NyaXB0RW5n
aW5lOjp0b1N0cmluZ0hhbmRsZSgpCiAgICAgfQogfQogCit2b2lkIHRzdF9RU2NyaXB0RW5naW5l
OjpuZXdBcnJheV9kYXRhKCkKK3sKKyAgICBRVGVzdDo6YWRkQ29sdW1uPGludD4oInNpemUiKTsK
KworICAgIFFUZXN0OjpuZXdSb3coImVtcHR5IGFycmF5IikgPDwgMDsKKyAgICBRVGVzdDo6bmV3
Um93KCIxMCIpIDw8IDEwOworICAgIFFUZXN0OjpuZXdSb3coIjEwMCIpIDw8IDEwMDsKKyAgICBR
VGVzdDo6bmV3Um93KCIxMDAwIikgPDwgMTAwMDsKKyAgICBRVGVzdDo6bmV3Um93KCIxMDAwMCIp
IDw8IDEwMDAwOworfQorCit2b2lkIHRzdF9RU2NyaXB0RW5naW5lOjpuZXdBcnJheSgpCit7Cisg
ICAgUUZFVENIKGludCwgc2l6ZSk7CisgICAgUVNjcmlwdEVuZ2luZSBlbmdpbmU7CisgICAgUUJF
TkNITUFSSyB7CisgICAgICAgIGVuZ2luZS5uZXdBcnJheShzaXplKTsKKyAgICB9Cit9CisKIFFU
RVNUX01BSU4odHN0X1FTY3JpcHRFbmdpbmUpCiAjaW5jbHVkZSAidHN0X3FzY3JpcHRlbmdpbmUu
bW9jIgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hh
bmdlTG9nCmluZGV4IGVjYzUxY2IuLjI0MTY0MjAgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0No
YW5nZUxvZworKysgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAx
MC0wNy0wMSAgQ2FpbyBNYXJjZWxvIGRlIE9saXZlaXJhIEZpbGhvICA8Y2Fpby5vbGl2ZWlyYUBv
cGVuYm9zc2Eub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gUVNjcmlwdEVuZ2luZSBBUEkgc2hvdWxkIGNvbnRhaW4gYSBuZXdBcnJheSBm
dW5jdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MzkxMTUKKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlci5weTogZXhl
bXB0aW5nIGRpcmVjdG9yeQorICAgICAgICBKYXZhU2NyaXB0Q29yZS9xdC9iZW5jaG1hcmtzLyBm
cm9tIFdlYktpdCBzdHlsZS4KKwogMjAxMC0wNy0wMSAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5o
YXVzbWFubkBub2tpYS5jb20+CiAKICAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgTGFzemxvIEdv
bWJvcy4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hl
Y2tlci5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlci5weQpp
bmRleCA1ZDc1YTFiLi4wZjVlNWQxIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3N0eWxlL2NoZWNrZXIucHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9zdHlsZS9jaGVja2VyLnB5CkBAIC0yMDcsNiArMjA3LDcgQEAgX1NLSVBQRURfRklMRVNfV0lU
SF9XQVJOSU5HID0gWwogICAgICJndGsyZHJhd2luZy5jIiwgIyBXZWJDb3JlL3BsYXRmb3JtL2d0
ay9ndGsyZHJhd2luZy5jCiAgICAgImd0azJkcmF3aW5nLmgiLCAjIFdlYkNvcmUvcGxhdGZvcm0v
Z3RrL2d0azJkcmF3aW5nLmgKICAgICAiSmF2YVNjcmlwdENvcmUvcXQvYXBpLyIsCisgICAgIkph
dmFTY3JpcHRDb3JlL3F0L2JlbmNobWFya3MvIiwKICAgICAiV2ViS2l0L2d0ay90ZXN0cy8iLAog
ICAgICJXZWJLaXQvcXQvQXBpLyIsCiAgICAgIldlYktpdC9xdC90ZXN0cy8iLAotLSAKMS43LjAu
MQoK
</data>
<flag name="review"
          id="47617"
          type_id="1"
          status="+"
          setter="kenneth"
    />
    <flag name="commit-queue"
          id="47618"
          type_id="3"
          status="+"
          setter="kenneth"
    />
          </attachment>
      

    </bug>

</bugzilla>