<?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>69858</bug_id>
          
          <creation_ts>2011-10-11 11:43:12 -0700</creation_ts>
          <short_desc>De-virtualized JSCell::toNumber</short_desc>
          <delta_ts>2011-10-13 12:24:09 -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>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>
          
          <blocked>67690</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Hahnenberg">mhahnenberg</reporter>
          <assigned_to name="Mark Hahnenberg">mhahnenberg</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>481775</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-10-11 11:43:12 -0700</bug_when>
    <thetext>Now that the JSC C API does something more sensible for toNumber (see bug 69156), we can eliminate JSCallbackObject::toNumber in favor of simply using JSObject::toString to cover the case for JSCallbackObject.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481782</commentid>
    <comment_count>1</comment_count>
      <attachid>110550</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-10-11 11:48:16 -0700</bug_when>
    <thetext>Created attachment 110550
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>482033</commentid>
    <comment_count>2</comment_count>
      <attachid>110606</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-10-11 16:47:17 -0700</bug_when>
    <thetext>Created attachment 110606
Fix windows</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>482541</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-10-12 11:10:32 -0700</bug_when>
    <thetext>*** Bug 69679 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>482734</commentid>
    <comment_count>4</comment_count>
      <attachid>110606</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-12 14:37:54 -0700</bug_when>
    <thetext>Comment on attachment 110606
Fix windows

Rejecting attachment 110606 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
unk #1 succeeded at 1 with fuzz 3.
patching file Source/JavaScriptGlue/UserObjectImp.cpp
Hunk #1 FAILED at 294.
1 out of 1 hunk FAILED -- saving rejects to file Source/JavaScriptGlue/UserObjectImp.cpp.rej
patching file Source/JavaScriptGlue/UserObjectImp.h
Hunk #1 FAILED at 61.
1 out of 1 hunk FAILED -- saving rejects to file Source/JavaScriptGlue/UserObjectImp.h.rej

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Sam Weinig&apos;, u&apos;--force&apos;]&quot; exit_code: 1

Full output: http://queues.webkit.org/results/10046045</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>482936</commentid>
    <comment_count>5</comment_count>
      <attachid>110789</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-10-12 18:39:38 -0700</bug_when>
    <thetext>Created attachment 110789
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>483386</commentid>
    <comment_count>6</comment_count>
      <attachid>110789</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-13 12:24:04 -0700</bug_when>
    <thetext>Comment on attachment 110789
Patch

Clearing flags on attachment: 110789

Committed r97381: &lt;http://trac.webkit.org/changeset/97381&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>483388</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-13 12:24:09 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110550</attachid>
            <date>2011-10-11 11:48:16 -0700</date>
            <delta_ts>2011-10-11 16:47:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69858-20111011114816.patch</filename>
            <type>text/plain</type>
            <size>11298</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTcxNjEKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0NhbGxiYWNrT2JqZWN0LmgKaW5kZXggYTU2MDM1YjlhNGQzM2UyOTFiNTYwYTU2NzE2YzMwMmFh
ZWJhODM0YS4uMDAxMDVjYzc3MzdmOWMyMDI2MjZhYmE3NTI2ZTliZjQ0NGMzMWY4NyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmgKQEAgLTE5Myw3ICsx
OTMsNiBAQCBwcml2YXRlOgogCiAgICAgdmlydHVhbCB2b2lkIGdldE93blByb3BlcnR5TmFtZXMo
RXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lQXJyYXkmLCBFbnVtZXJhdGlvbk1vZGUgbW9kZSA9IEV4
Y2x1ZGVEb250RW51bVByb3BlcnRpZXMpOwogCi0gICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIo
RXhlY1N0YXRlKikgY29uc3Q7CiAgICAgdmlydHVhbCBVU3RyaW5nIHRvU3RyaW5nKEV4ZWNTdGF0
ZSopIGNvbnN0OwogCiAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEo
Q29uc3RydWN0RGF0YSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pT
Q2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaAppbmRleCA4ZWUwNjA2MjdlYjQ2YmFhMjZkYWFkZTBk
YzQyMTc5ZTdkZDVhY2JlLi4wZTcwYTc2MTc1MjVhNzU5YmNlODU2YzE4MjIyMzMwODg0Y2Y5YmRk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3RG
dW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmpl
Y3RGdW5jdGlvbnMuaApAQCAtNDc5LDQxICs0NzksNiBAQCB2b2lkIEpTQ2FsbGJhY2tPYmplY3Q8
UGFyZW50Pjo6Z2V0T3duUHJvcGVydHlOYW1lcyhFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFt
ZQogfQogCiB0ZW1wbGF0ZSA8Y2xhc3MgUGFyZW50PgotZG91YmxlIEpTQ2FsbGJhY2tPYmplY3Q8
UGFyZW50Pjo6dG9OdW1iZXIoRXhlY1N0YXRlKiBleGVjKSBjb25zdAotewotICAgIC8vIFdlIG5l
ZWQgdGhpcyBjaGVjayB0byBndWFyZCBhZ2FpbnN0IHRoZSBjYXNlIHdoZXJlIHRoaXMgb2JqZWN0
IGlzIHJocyBvZgotICAgIC8vIGEgYmluYXJ5IGV4cHJlc3Npb24gd2hlcmUgbGhzIHRocmV3IGFu
IGV4Y2VwdGlvbiBpbiBpdHMgY29udmVyc2lvbiB0bwotICAgIC8vIHByaW1pdGl2ZQotICAgIGlm
IChleGVjLT5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1p
dHM8ZG91YmxlPjo6cXVpZXRfTmFOKCk7Ci0gICAgSlNDb250ZXh0UmVmIGN0eCA9IHRvUmVmKGV4
ZWMpOwotICAgIEpTT2JqZWN0UmVmIHRoaXNSZWYgPSB0b1JlZih0aGlzKTsKLSAgICAKLSAgICBm
b3IgKEpTQ2xhc3NSZWYganNDbGFzcyA9IGNsYXNzUmVmKCk7IGpzQ2xhc3M7IGpzQ2xhc3MgPSBq
c0NsYXNzLT5wYXJlbnRDbGFzcykKLSAgICAgICAgaWYgKEpTT2JqZWN0Q29udmVydFRvVHlwZUNh
bGxiYWNrIGNvbnZlcnRUb1R5cGUgPSBqc0NsYXNzLT5jb252ZXJ0VG9UeXBlKSB7Ci0gICAgICAg
ICAgICBKU1ZhbHVlUmVmIGV4Y2VwdGlvbiA9IDA7Ci0gICAgICAgICAgICBKU1ZhbHVlUmVmIHZh
bHVlOwotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIEFQSUNhbGxiYWNrU2hpbSBjYWxs
YmFja1NoaW0oZXhlYyk7Ci0gICAgICAgICAgICAgICAgdmFsdWUgPSBjb252ZXJ0VG9UeXBlKGN0
eCwgdGhpc1JlZiwga0pTVHlwZU51bWJlciwgJmV4Y2VwdGlvbik7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgICAgICBpZiAoZXhjZXB0aW9uKSB7Ci0gICAgICAgICAgICAgICAgdGhyb3dFcnJvcihl
eGVjLCB0b0pTKGV4ZWMsIGV4Y2VwdGlvbikpOwotICAgICAgICAgICAgICAgIHJldHVybiAwOwot
ICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKCF2YWx1ZSkKLSAgICAgICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgICAgICAgICAKLSAgICAgICAgICAgIEpTVmFsdWUganNWYWx1ZSA9
IHRvSlMoZXhlYywgdmFsdWUpOwotICAgICAgICAgICAgaWYgKCFqc1ZhbHVlLmlzTnVtYmVyKCkp
Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1pdHM8ZG91YmxlPjo6cXVp
ZXRfTmFOKCk7Ci0gICAgICAgICAgICByZXR1cm4ganNWYWx1ZS5hc051bWJlcigpOwotICAgICAg
ICB9Ci0gICAgICAgICAgICAKLSAgICByZXR1cm4gUGFyZW50Ojp0b051bWJlcihleGVjKTsKLX0K
LQotdGVtcGxhdGUgPGNsYXNzIFBhcmVudD4KIFVTdHJpbmcgSlNDYWxsYmFja09iamVjdDxQYXJl
bnQ+Ojp0b1N0cmluZyhFeGVjU3RhdGUqIGV4ZWMpIGNvbnN0CiB7CiAgICAgSlNDb250ZXh0UmVm
IGN0eCA9IHRvUmVmKGV4ZWMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggNDcyY2E5NGRi
OTgxZjNkOGIwMWM3NzAyOTczMjYzOGE3YjY5MjhhZi4uMGE0NmFlNTBiZjRhMTY3MTIzNTEzZjA1
MTYyOTI2NzM5NDVkYjg0MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjgg
QEAKKzIwMTEtMTAtMTEgIE1hcmsgSGFobmVuYmVyZyAgPG1oYWhuZW5iZXJnQGFwcGxlLmNvbT4K
KworICAgICAgICBEZS12aXJ0dWFsaXplZCBKU0NlbGw6OnRvTnVtYmVyCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02OTg1OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZWQgSlNDYWxsYmFja09iamVj
dDo6dG9OdW1iZXIgYmVjYXVzZSBpdHMgbm8gbG9uZ2VyIG5lY2Vzc2FyeSBzaW5jZSAKKyAgICAg
ICAgSlNPYmplY3Q6OnRvTnVtYmVyIG5vdyBzdWZmaWNlcyBzaW5jZSB3ZSBpbXBsaWNpdGx5IGFk
ZCB2YWx1ZU9mIHRvIGFuIG9iamVjdCdzCisgICAgICAgIHByb3RvdHlwZSB3aGVuZXZlciBhIGNv
bnZlcnRUb1R5cGUgY2FsbGJhY2sgaXMgcHJvdmlkZWQuCisgICAgICAgICogQVBJL0pTQ2FsbGJh
Y2tPYmplY3QuaDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja09iamVjdEZ1bmN0aW9ucy5oOgor
CisgICAgICAgIERlLXZpcnR1YWxpemVkIEpTQ2VsbDo6dG9OdW1iZXIsIEpTT2JqZWN0Ojp0b051
bWJlciwgYW5kIEpTU3RyaW5nOjp0b051bWJlci4KKyAgICAgICAgKiBydW50aW1lL0pTQ2VsbC5j
cHA6CisgICAgICAgIChKU0M6OkpTQ2VsbDo6dG9OdW1iZXIpOgorICAgICAgICAqIHJ1bnRpbWUv
SlNDZWxsLmg6CisgICAgICAgICogcnVudGltZS9KU09iamVjdC5oOgorICAgICAgICAqIHJ1bnRp
bWUvSlNTdHJpbmcuaDoKKworICAgICAgICBSZW1vdmVkIEpTTm90QW5PYmplY3Q6OnRvTnVtYmVy
IGJlY2F1c2UgaXRzIHJlc3VsdCBkb2Vzbid0IG1hdHRlciBhbmQgaXQgaW1wbGVtZW50cyAKKyAg
ICAgICAgZGVmYXVsdFZhbHVlLCB0aGVyZWZvcmUgSlNPYmplY3Q6OnRvTnVtYmVyIGNhbiBjb3Zl
ciBpdHMgY2FzZS4KKyAgICAgICAgKiBydW50aW1lL0pTTm90QW5PYmplY3QuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNOb3RBbk9iamVjdC5oOgorCiAyMDExLTEwLTExICBHYXZpbiBCYXJyYWNs
b3VnaCAgPGJhcmFjbG91Z2hAYXBwbGUuY29tPgogCiAgICAgICAgIFN3aXRjaCBSZWdpc3RlclNp
emVkQm9vbGVhbi9kZmdDb252ZXJ0SlNWYWx1ZVRvSW50MzIgcmV0dXJuIHR5cGUgdG8gc2l6ZV90
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcAppbmRleCA4OTczZGMzMDA0
NGZiZmY3OGYwZjA2MzYyMzhiOWY4YmUzOWU5NzkxLi5hZGNjNWQxYmQ1YTE1NGMzNzJlZGFjNDNk
NWUzNzFmMWU2ZjVjOWE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0NlbGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5j
cHAKQEAgLTE2MiwxMCArMTYyLDExIEBAIGJvb2wgSlNDZWxsOjpnZXRQcmltaXRpdmVOdW1iZXIo
RXhlY1N0YXRlKiBleGVjLCBkb3VibGUmIG51bWJlciwgSlNWYWx1ZSYgdmFsdWUpCiAgICAgcmV0
dXJuIHN0YXRpY19jYXN0PGNvbnN0IEpTT2JqZWN0Kj4odGhpcyktPmdldFByaW1pdGl2ZU51bWJl
cihleGVjLCBudW1iZXIsIHZhbHVlKTsKIH0KIAotZG91YmxlIEpTQ2VsbDo6dG9OdW1iZXIoRXhl
Y1N0YXRlKikgY29uc3QKLXsKLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4g
MDsKK2RvdWJsZSBKU0NlbGw6OnRvTnVtYmVyKEV4ZWNTdGF0ZSogZXhlYykgY29uc3QKK3sgCisg
ICAgaWYgKGlzU3RyaW5nKCkpCisgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxjb25zdCBKU1N0
cmluZyo+KHRoaXMpLT50b051bWJlcihleGVjKTsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29u
c3QgSlNPYmplY3QqPih0aGlzKS0+dG9OdW1iZXIoZXhlYyk7CiB9CiAKIFVTdHJpbmcgSlNDZWxs
Ojp0b1N0cmluZyhFeGVjU3RhdGUqKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNDZWxsLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0NlbGwuaAppbmRleCAyM2YwZmQ1YzBmYWY3NTQ5ZmU3NjA4ZTBlNGViMGY1M2YzMjA2YmU3Li44
YTY2MTFiYjU0NTI4NzhkNjk2MjQxOTYzNDFkNmQwODFhZGFlNzM3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0NlbGwuaApAQCAtODEsNyArODEsNyBAQCBuYW1lc3BhY2UgSlNDIHsK
ICAgICAgICAgSlNWYWx1ZSB0b1ByaW1pdGl2ZShFeGVjU3RhdGUqLCBQcmVmZXJyZWRQcmltaXRp
dmVUeXBlKSBjb25zdDsKICAgICAgICAgYm9vbCBnZXRQcmltaXRpdmVOdW1iZXIoRXhlY1N0YXRl
KiwgZG91YmxlJiBudW1iZXIsIEpTVmFsdWUmKSBjb25zdDsKICAgICAgICAgYm9vbCB0b0Jvb2xl
YW4oRXhlY1N0YXRlKikgY29uc3Q7Ci0gICAgICAgIHZpcnR1YWwgZG91YmxlIHRvTnVtYmVyKEV4
ZWNTdGF0ZSopIGNvbnN0OworICAgICAgICBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRlKikgY29u
c3Q7CiAgICAgICAgIHZpcnR1YWwgVVN0cmluZyB0b1N0cmluZyhFeGVjU3RhdGUqKSBjb25zdDsK
ICAgICAgICAgSlNPYmplY3QqIHRvT2JqZWN0KEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0Kikg
Y29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90
QW5PYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOb3RBbk9iamVj
dC5jcHAKaW5kZXggZTE0YTY4YmQ5NGZhMTRlZTBjZDY0ZDBmMzQyN2FhMmNjNDZkYjlkOS4uMjg3
OWQ3ZTRhMmVkMTU1Y2IwYmM1NTIwMWNiZjU2M2MwMzdjMjYzZSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOb3RBbk9iamVjdC5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOb3RBbk9iamVjdC5jcHAKQEAgLTQ1LDEyICs0NSw2IEBA
IEpTVmFsdWUgSlNOb3RBbk9iamVjdDo6ZGVmYXVsdFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgUHJl
ZmVycmVkUHJpbWl0aXZlVHlwZSkgY29uCiAgICAgcmV0dXJuIGpzTnVtYmVyKDApOwogfQogCi1k
b3VibGUgSlNOb3RBbk9iamVjdDo6dG9OdW1iZXIoRXhlY1N0YXRlKiBleGVjKSBjb25zdAotewot
ICAgIEFTU0VSVF9VTlVTRUQoZXhlYywgZXhlYy0+aGFkRXhjZXB0aW9uKCkpOwotICAgIHJldHVy
biBzdGQ6Om51bWVyaWNfbGltaXRzPGRvdWJsZT46OnF1aWV0X05hTigpOwotfQotCiBVU3RyaW5n
IEpTTm90QW5PYmplY3Q6OnRvU3RyaW5nKEV4ZWNTdGF0ZSogZXhlYykgY29uc3QKIHsKICAgICBB
U1NFUlRfVU5VU0VEKGV4ZWMsIGV4ZWMtPmhhZEV4Y2VwdGlvbigpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuaAppbmRleCBiOGYwZmFhODU2MjI2MjNj
MjA3OWM5YzljNzEzN2Q3ZDdiMjg1MWY3Li40YTBhZGZiYWFmZjczNzZjMDQzOTUxNjRhYTQ2NWVk
Mzk2OGY2Y2U3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05v
dEFuT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOb3RBbk9i
amVjdC5oCkBAIC02Niw3ICs2Niw2IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgICAgIC8vIEpT
VmFsdWUgbWV0aG9kcwogICAgICAgICB2aXJ0dWFsIEpTVmFsdWUgZGVmYXVsdFZhbHVlKEV4ZWNT
dGF0ZSosIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUpIGNvbnN0OwotICAgICAgICB2aXJ0dWFsIGRv
dWJsZSB0b051bWJlcihFeGVjU3RhdGUqKSBjb25zdDsKICAgICAgICAgdmlydHVhbCBVU3RyaW5n
IHRvU3RyaW5nKEV4ZWNTdGF0ZSopIGNvbnN0OwogCiAgICAgICAgIC8vIEpTT2JqZWN0IG1ldGhv
ZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0Lmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5oCmluZGV4IDNhZDcwYzUw
YWFkNjFhZDM3ZmNjMmZhOWI5MDRhNzBiMzdmZjMzYjIuLmY0ODc5Y2U4MTExMDk4MTg3ZDI0YjRl
OTQ5NDBiZmY5NDUyMjM2MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmpl
Y3QuaApAQCAtMTQwLDcgKzE0MCw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBKU1ZhbHVl
IHRvUHJpbWl0aXZlKEV4ZWNTdGF0ZSosIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgPSBOb1ByZWZl
cmVuY2UpIGNvbnN0OwogICAgICAgICBib29sIHRvQm9vbGVhbihFeGVjU3RhdGUqKSBjb25zdDsK
ICAgICAgICAgYm9vbCBnZXRQcmltaXRpdmVOdW1iZXIoRXhlY1N0YXRlKiwgZG91YmxlJiBudW1i
ZXIsIEpTVmFsdWUmKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIoRXhl
Y1N0YXRlKikgY29uc3Q7CisgICAgICAgIGRvdWJsZSB0b051bWJlcihFeGVjU3RhdGUqKSBjb25z
dDsKICAgICAgICAgdmlydHVhbCBVU3RyaW5nIHRvU3RyaW5nKEV4ZWNTdGF0ZSopIGNvbnN0Owog
CiAgICAgICAgIHZpcnR1YWwgSlNPYmplY3QqIHRvVGhpc09iamVjdChFeGVjU3RhdGUqKSBjb25z
dDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5oCmluZGV4IDcyMGQ2MmJk
NmNmMzI3MzExNWY2MmYyZTM4MTQwMTk0ZGJjYjg4ZWYuLmE4MGM4MDJjMmRmMmE0NjE3NGExNTEx
MmY0NDJjNDk5ZjAyMzYzNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTU3RyaW5nLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJp
bmcuaApAQCAtNDMwLDYgKzQzMCw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBib29sIHRv
Qm9vbGVhbihFeGVjU3RhdGUqKSBjb25zdDsKICAgICAgICAgYm9vbCBnZXRQcmltaXRpdmVOdW1i
ZXIoRXhlY1N0YXRlKiwgZG91YmxlJiBudW1iZXIsIEpTVmFsdWUmKSBjb25zdDsKICAgICAgICAg
SlNPYmplY3QqIHRvT2JqZWN0KEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0KikgY29uc3Q7Cisg
ICAgICAgIGRvdWJsZSB0b051bWJlcihFeGVjU3RhdGUqKSBjb25zdDsKICAgICAgICAgCiAgICAg
ICAgIGJvb2wgZ2V0U3RyaW5nUHJvcGVydHlTbG90KEV4ZWNTdGF0ZSosIGNvbnN0IElkZW50aWZp
ZXImIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90Jik7CiAgICAgICAgIGJvb2wgZ2V0U3RyaW5n
UHJvcGVydHlTbG90KEV4ZWNTdGF0ZSosIHVuc2lnbmVkIHByb3BlcnR5TmFtZSwgUHJvcGVydHlT
bG90Jik7CkBAIC01MDEsNyArNTAyLDYgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgICAgICB9
CiAgICAgICAgIH0KIAotICAgICAgICB2aXJ0dWFsIGRvdWJsZSB0b051bWJlcihFeGVjU3RhdGUq
KSBjb25zdDsKICAgICAgICAgdmlydHVhbCBVU3RyaW5nIHRvU3RyaW5nKEV4ZWNTdGF0ZSopIGNv
bnN0OwogCiAgICAgICAgIHZpcnR1YWwgSlNPYmplY3QqIHRvVGhpc09iamVjdChFeGVjU3RhdGUq
KSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9DaGFuZ2VMb2cgYi9T
b3VyY2UvSmF2YVNjcmlwdEdsdWUvQ2hhbmdlTG9nCmluZGV4IDBlNzM1MGYzYjBjMmNmNWQ2YmI3
ZTI3YTJmMTAxZjk3MDA2ZTI0NTUuLjg0ZTQyZTcyZjI0NGNhNGUyMWUyYmM1ZGMxYTM1NDYzOGU3
MGE4ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL0phdmFTY3JpcHRHbHVlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDExLTEw
LTExICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAg
RGUtdmlydHVhbGl6ZWQgSlNDZWxsOjp0b051bWJlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk4NTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmVkIFVzZXJPYmplY3RJbXA6OnRvTnVtYmVyIGJl
Y2F1c2UgaXQncyBubyBsb25nZXIgbmVjZXNzYXJ5IHNpbmNlIAorICAgICAgICBKU09iamVjdDo6
dG9OdW1iZXIgY2FuIGNvdmVyIHRoaXMgY2FzZS4KKyAgICAgICAgKiBVc2VyT2JqZWN0SW1wLmNw
cDoKKyAgICAgICAgKiBVc2VyT2JqZWN0SW1wLmg6CisKIDIwMTEtMTAtMTAgIE1hcmsgSGFobmVu
YmVyZyAgPG1oYWhuZW5iZXJnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgZ2V0Q2FsbERh
dGFWaXJ0dWFsIG1ldGhvZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9Vc2Vy
T2JqZWN0SW1wLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9Vc2VyT2JqZWN0SW1wLmNwcApp
bmRleCA2Zjk5YTRjODQ2NmI0YTU1NTZkOWE3MDU0NjA2ZGRlN2JhM2NlOTVhLi42YTcxYTJjOWIy
ZWQxYmFhYWYzODgyZTYwNjU0Y2M3NTQ4MWY2YjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdEdsdWUvVXNlck9iamVjdEltcC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRHbHVlL1Vz
ZXJPYmplY3RJbXAuY3BwCkBAIC0yOTQsNDAgKzI5NCw2IEBAIGJvb2wgVXNlck9iamVjdEltcDo6
dG9Cb29sZWFuKEV4ZWNTdGF0ZSAqZXhlYykgY29uc3QKICAgICByZXR1cm4gcmVzdWx0OwogfQog
Ci1kb3VibGUgVXNlck9iamVjdEltcDo6dG9OdW1iZXIoRXhlY1N0YXRlICpleGVjKSBjb25zdAot
ewotICAgIGRvdWJsZSByZXN1bHQgPSAwOwotICAgIEpTVXNlck9iamVjdCoganNPYmpQdHIgPSBL
SlNWYWx1ZVRvSlNPYmplY3QodG9PYmplY3QoZXhlYywgZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVj
dCgpKSwgZXhlYyk7Ci0gICAgQ0ZUeXBlUmVmIGNmVmFsdWUgPSBqc09ialB0ciA/IGpzT2JqUHRy
LT5Db3B5Q0ZWYWx1ZSgpIDogMDsKLSAgICBpZiAoY2ZWYWx1ZSkKLSAgICB7Ci0gICAgICAgIENG
VHlwZUlEIGNmVHlwZSA9IENGR2V0VHlwZUlEKGNmVmFsdWUpOwotCi0gICAgICAgIGlmIChjZlZh
bHVlID09IEdldENGTnVsbCgpKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLwotICAgICAgICB9
Ci0gICAgICAgIGVsc2UgaWYgKGNmVHlwZSA9PSBDRkJvb2xlYW5HZXRUeXBlSUQoKSkKLSAgICAg
ICAgewotICAgICAgICAgICAgaWYgKGNmVmFsdWUgPT0ga0NGQm9vbGVhblRydWUpCi0gICAgICAg
ICAgICB7Ci0gICAgICAgICAgICAgICAgcmVzdWx0ID0gMTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgfQotICAgICAgICBlbHNlIGlmIChjZlR5cGUgPT0gQ0ZTdHJpbmdHZXRUeXBlSUQoKSkKLSAg
ICAgICAgewotICAgICAgICAgICAgcmVzdWx0ID0gQ0ZTdHJpbmdHZXREb3VibGVWYWx1ZSgoQ0ZT
dHJpbmdSZWYpY2ZWYWx1ZSk7Ci0gICAgICAgIH0KLSAgICAgICAgZWxzZSBpZiAoY2ZUeXBlID09
IENGTnVtYmVyR2V0VHlwZUlEKCkpCi0gICAgICAgIHsKLSAgICAgICAgICAgIENGTnVtYmVyR2V0
VmFsdWUoKENGTnVtYmVyUmVmKWNmVmFsdWUsIGtDRk51bWJlckRvdWJsZVR5cGUsICZyZXN1bHQp
OwotICAgICAgICB9Ci0gICAgfQotICAgIFJlbGVhc2VDRlR5cGUoY2ZWYWx1ZSk7Ci0gICAgaWYg
KGpzT2JqUHRyKSBqc09ialB0ci0+UmVsZWFzZSgpOwotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0K
IFVTdHJpbmcgVXNlck9iamVjdEltcDo6dG9TdHJpbmcoRXhlY1N0YXRlICpleGVjKSBjb25zdAog
ewogICAgIFVTdHJpbmcgcmVzdWx0OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRHbHVl
L1VzZXJPYmplY3RJbXAuaCBiL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9Vc2VyT2JqZWN0SW1wLmgK
aW5kZXggYWNlMTkzMzc2Njc3NTMwZWUyZjYxMzljMTBkNmFmN2UzYjUyNWRjNC4uZDQzNGM5NThl
NWM1YjVhNDNhMTExNDNkYmVkMGIxYmUwYjM4MzlmMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRHbHVlL1VzZXJPYmplY3RJbXAuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdEdsdWUvVXNl
ck9iamVjdEltcC5oCkBAIC02MSw3ICs2MSw2IEBAIHB1YmxpYzoKIAogICAgIEpTVmFsdWUgdG9Q
cmltaXRpdmUoRXhlY1N0YXRlKiwgUHJlZmVycmVkUHJpbWl0aXZlVHlwZSBwcmVmZXJyZWRUeXBl
ID0gTm9QcmVmZXJlbmNlKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wgdG9Cb29sZWFuKEV4ZWNT
dGF0ZSAqZXhlYykgY29uc3Q7Ci0gICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRl
ICpleGVjKSBjb25zdDsKICAgICB2aXJ0dWFsIFVTdHJpbmcgdG9TdHJpbmcoRXhlY1N0YXRlICpl
eGVjKSBjb25zdDsKIAogICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xv
dFZpc2l0b3ImKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110606</attachid>
            <date>2011-10-11 16:47:17 -0700</date>
            <delta_ts>2011-10-12 18:39:35 -0700</delta_ts>
            <desc>Fix windows</desc>
            <filename>bug-69858-20111011164718.patch</filename>
            <type>text/plain</type>
            <size>12247</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTcxNjEKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0NhbGxiYWNrT2JqZWN0LmgKaW5kZXggYTU2MDM1YjlhNGQzM2UyOTFiNTYwYTU2NzE2YzMwMmFh
ZWJhODM0YS4uMDAxMDVjYzc3MzdmOWMyMDI2MjZhYmE3NTI2ZTliZjQ0NGMzMWY4NyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmgKQEAgLTE5Myw3ICsx
OTMsNiBAQCBwcml2YXRlOgogCiAgICAgdmlydHVhbCB2b2lkIGdldE93blByb3BlcnR5TmFtZXMo
RXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lQXJyYXkmLCBFbnVtZXJhdGlvbk1vZGUgbW9kZSA9IEV4
Y2x1ZGVEb250RW51bVByb3BlcnRpZXMpOwogCi0gICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIo
RXhlY1N0YXRlKikgY29uc3Q7CiAgICAgdmlydHVhbCBVU3RyaW5nIHRvU3RyaW5nKEV4ZWNTdGF0
ZSopIGNvbnN0OwogCiAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEo
Q29uc3RydWN0RGF0YSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pT
Q2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaAppbmRleCA4ZWUwNjA2MjdlYjQ2YmFhMjZkYWFkZTBk
YzQyMTc5ZTdkZDVhY2JlLi4wZTcwYTc2MTc1MjVhNzU5YmNlODU2YzE4MjIyMzMwODg0Y2Y5YmRk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3RG
dW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmpl
Y3RGdW5jdGlvbnMuaApAQCAtNDc5LDQxICs0NzksNiBAQCB2b2lkIEpTQ2FsbGJhY2tPYmplY3Q8
UGFyZW50Pjo6Z2V0T3duUHJvcGVydHlOYW1lcyhFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFt
ZQogfQogCiB0ZW1wbGF0ZSA8Y2xhc3MgUGFyZW50PgotZG91YmxlIEpTQ2FsbGJhY2tPYmplY3Q8
UGFyZW50Pjo6dG9OdW1iZXIoRXhlY1N0YXRlKiBleGVjKSBjb25zdAotewotICAgIC8vIFdlIG5l
ZWQgdGhpcyBjaGVjayB0byBndWFyZCBhZ2FpbnN0IHRoZSBjYXNlIHdoZXJlIHRoaXMgb2JqZWN0
IGlzIHJocyBvZgotICAgIC8vIGEgYmluYXJ5IGV4cHJlc3Npb24gd2hlcmUgbGhzIHRocmV3IGFu
IGV4Y2VwdGlvbiBpbiBpdHMgY29udmVyc2lvbiB0bwotICAgIC8vIHByaW1pdGl2ZQotICAgIGlm
IChleGVjLT5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1p
dHM8ZG91YmxlPjo6cXVpZXRfTmFOKCk7Ci0gICAgSlNDb250ZXh0UmVmIGN0eCA9IHRvUmVmKGV4
ZWMpOwotICAgIEpTT2JqZWN0UmVmIHRoaXNSZWYgPSB0b1JlZih0aGlzKTsKLSAgICAKLSAgICBm
b3IgKEpTQ2xhc3NSZWYganNDbGFzcyA9IGNsYXNzUmVmKCk7IGpzQ2xhc3M7IGpzQ2xhc3MgPSBq
c0NsYXNzLT5wYXJlbnRDbGFzcykKLSAgICAgICAgaWYgKEpTT2JqZWN0Q29udmVydFRvVHlwZUNh
bGxiYWNrIGNvbnZlcnRUb1R5cGUgPSBqc0NsYXNzLT5jb252ZXJ0VG9UeXBlKSB7Ci0gICAgICAg
ICAgICBKU1ZhbHVlUmVmIGV4Y2VwdGlvbiA9IDA7Ci0gICAgICAgICAgICBKU1ZhbHVlUmVmIHZh
bHVlOwotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIEFQSUNhbGxiYWNrU2hpbSBjYWxs
YmFja1NoaW0oZXhlYyk7Ci0gICAgICAgICAgICAgICAgdmFsdWUgPSBjb252ZXJ0VG9UeXBlKGN0
eCwgdGhpc1JlZiwga0pTVHlwZU51bWJlciwgJmV4Y2VwdGlvbik7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgICAgICBpZiAoZXhjZXB0aW9uKSB7Ci0gICAgICAgICAgICAgICAgdGhyb3dFcnJvcihl
eGVjLCB0b0pTKGV4ZWMsIGV4Y2VwdGlvbikpOwotICAgICAgICAgICAgICAgIHJldHVybiAwOwot
ICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKCF2YWx1ZSkKLSAgICAgICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgICAgICAgICAKLSAgICAgICAgICAgIEpTVmFsdWUganNWYWx1ZSA9
IHRvSlMoZXhlYywgdmFsdWUpOwotICAgICAgICAgICAgaWYgKCFqc1ZhbHVlLmlzTnVtYmVyKCkp
Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1pdHM8ZG91YmxlPjo6cXVp
ZXRfTmFOKCk7Ci0gICAgICAgICAgICByZXR1cm4ganNWYWx1ZS5hc051bWJlcigpOwotICAgICAg
ICB9Ci0gICAgICAgICAgICAKLSAgICByZXR1cm4gUGFyZW50Ojp0b051bWJlcihleGVjKTsKLX0K
LQotdGVtcGxhdGUgPGNsYXNzIFBhcmVudD4KIFVTdHJpbmcgSlNDYWxsYmFja09iamVjdDxQYXJl
bnQ+Ojp0b1N0cmluZyhFeGVjU3RhdGUqIGV4ZWMpIGNvbnN0CiB7CiAgICAgSlNDb250ZXh0UmVm
IGN0eCA9IHRvUmVmKGV4ZWMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggNDcyY2E5NGRi
OTgxZjNkOGIwMWM3NzAyOTczMjYzOGE3YjY5MjhhZi4uMGE0NmFlNTBiZjRhMTY3MTIzNTEzZjA1
MTYyOTI2NzM5NDVkYjg0MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjgg
QEAKKzIwMTEtMTAtMTEgIE1hcmsgSGFobmVuYmVyZyAgPG1oYWhuZW5iZXJnQGFwcGxlLmNvbT4K
KworICAgICAgICBEZS12aXJ0dWFsaXplZCBKU0NlbGw6OnRvTnVtYmVyCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02OTg1OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZWQgSlNDYWxsYmFja09iamVj
dDo6dG9OdW1iZXIgYmVjYXVzZSBpdHMgbm8gbG9uZ2VyIG5lY2Vzc2FyeSBzaW5jZSAKKyAgICAg
ICAgSlNPYmplY3Q6OnRvTnVtYmVyIG5vdyBzdWZmaWNlcyBzaW5jZSB3ZSBpbXBsaWNpdGx5IGFk
ZCB2YWx1ZU9mIHRvIGFuIG9iamVjdCdzCisgICAgICAgIHByb3RvdHlwZSB3aGVuZXZlciBhIGNv
bnZlcnRUb1R5cGUgY2FsbGJhY2sgaXMgcHJvdmlkZWQuCisgICAgICAgICogQVBJL0pTQ2FsbGJh
Y2tPYmplY3QuaDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja09iamVjdEZ1bmN0aW9ucy5oOgor
CisgICAgICAgIERlLXZpcnR1YWxpemVkIEpTQ2VsbDo6dG9OdW1iZXIsIEpTT2JqZWN0Ojp0b051
bWJlciwgYW5kIEpTU3RyaW5nOjp0b051bWJlci4KKyAgICAgICAgKiBydW50aW1lL0pTQ2VsbC5j
cHA6CisgICAgICAgIChKU0M6OkpTQ2VsbDo6dG9OdW1iZXIpOgorICAgICAgICAqIHJ1bnRpbWUv
SlNDZWxsLmg6CisgICAgICAgICogcnVudGltZS9KU09iamVjdC5oOgorICAgICAgICAqIHJ1bnRp
bWUvSlNTdHJpbmcuaDoKKworICAgICAgICBSZW1vdmVkIEpTTm90QW5PYmplY3Q6OnRvTnVtYmVy
IGJlY2F1c2UgaXRzIHJlc3VsdCBkb2Vzbid0IG1hdHRlciBhbmQgaXQgaW1wbGVtZW50cyAKKyAg
ICAgICAgZGVmYXVsdFZhbHVlLCB0aGVyZWZvcmUgSlNPYmplY3Q6OnRvTnVtYmVyIGNhbiBjb3Zl
ciBpdHMgY2FzZS4KKyAgICAgICAgKiBydW50aW1lL0pTTm90QW5PYmplY3QuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNOb3RBbk9iamVjdC5oOgorCiAyMDExLTEwLTExICBHYXZpbiBCYXJyYWNs
b3VnaCAgPGJhcmFjbG91Z2hAYXBwbGUuY29tPgogCiAgICAgICAgIFN3aXRjaCBSZWdpc3RlclNp
emVkQm9vbGVhbi9kZmdDb252ZXJ0SlNWYWx1ZVRvSW50MzIgcmV0dXJuIHR5cGUgdG8gc2l6ZV90
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmNwcm9q
L0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmRlZiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9KYXZhU2NyaXB0Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUuZGVm
CmluZGV4IDdjNzk3ZDNhMzhiNzY0Mzg5MDVlMTFkYjJlZDBmYzliNDlmZmJiZmMuLmI3NzNiZjBk
OGI4OTNlMWE2NWUzMmU4ODQ2ODQ3YTE2MThkNjc1NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlw
dENvcmUuZGVmCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3By
b2ovSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUuZGVmCkBAIC0zNDYsOSArMzQ2LDYgQEAg
RVhQT1JUUwogICAgID90bHNLZXlzQFdURkBAWUFQQUtYWgogICAgID90b0ludDMyQEpTQ0BAWUFI
TkBaCiAgICAgP3RvSW50ZWdlckBKU1ZhbHVlQEpTQ0BAUUJFTlBBVkV4ZWNTdGF0ZUAyQEBaCi0g
ICAgP3RvTnVtYmVyQEpTQ2VsbEBKU0NAQFVCRU5QQVZFeGVjU3RhdGVAMkBAWgotICAgID90b051
bWJlckBKU09iamVjdEBKU0NAQFVCRU5QQVZFeGVjU3RhdGVAMkBAWgotICAgID90b051bWJlckBK
U1N0cmluZ0BKU0NAQEVCRU5QQVZFeGVjU3RhdGVAMkBAWgogICAgID90b051bWJlclNsb3dDYXNl
QEpTVmFsdWVASlNDQEBBQkVOUEFWRXhlY1N0YXRlQDJAQFoKICAgICA/dG9PYmplY3RASlNDZWxs
QEpTQ0BAUUJFUEFWSlNPYmplY3RAMkBQQVZFeGVjU3RhdGVAMkBQQVZKU0dsb2JhbE9iamVjdEAy
QEBaCiAgICAgP3RvT2JqZWN0U2xvd0Nhc2VASlNWYWx1ZUBKU0NAQEFCRVBBVkpTT2JqZWN0QDJA
UEFWRXhlY1N0YXRlQDJAUEFWSlNHbG9iYWxPYmplY3RAMkBAWgpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQ2VsbC5jcHAKaW5kZXggODk3M2RjMzAwNDRmYmZmNzhmMGYwNjM2MjM4Yjlm
OGJlMzllOTc5MS4uYWRjYzVkMWJkNWExNTRjMzcyZWRhYzQzZDVlMzcxZjFlNmY1YzlhNCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuY3BwCkBAIC0xNjIsMTAgKzE2Miwx
MSBAQCBib29sIEpTQ2VsbDo6Z2V0UHJpbWl0aXZlTnVtYmVyKEV4ZWNTdGF0ZSogZXhlYywgZG91
YmxlJiBudW1iZXIsIEpTVmFsdWUmIHZhbHVlKQogICAgIHJldHVybiBzdGF0aWNfY2FzdDxjb25z
dCBKU09iamVjdCo+KHRoaXMpLT5nZXRQcmltaXRpdmVOdW1iZXIoZXhlYywgbnVtYmVyLCB2YWx1
ZSk7CiB9CiAKLWRvdWJsZSBKU0NlbGw6OnRvTnVtYmVyKEV4ZWNTdGF0ZSopIGNvbnN0Ci17Ci0g
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIDA7Citkb3VibGUgSlNDZWxsOjp0
b051bWJlcihFeGVjU3RhdGUqIGV4ZWMpIGNvbnN0Cit7IAorICAgIGlmIChpc1N0cmluZygpKQor
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgSlNTdHJpbmcqPih0aGlzKS0+dG9OdW1i
ZXIoZXhlYyk7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IEpTT2JqZWN0Kj4odGhpcykt
PnRvTnVtYmVyKGV4ZWMpOwogfQogCiBVU3RyaW5nIEpTQ2VsbDo6dG9TdHJpbmcoRXhlY1N0YXRl
KikgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2Vs
bC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgKaW5kZXggMjNmMGZk
NWMwZmFmNzU0OWZlNzYwOGUwZTRlYjBmNTNmMzIwNmJlNy4uOGE2NjExYmI1NDUyODc4ZDY5NjI0
MTk2MzQxZDZkMDgxYWRhZTczNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNDZWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxs
LmgKQEAgLTgxLDcgKzgxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIEpTVmFsdWUgdG9Q
cmltaXRpdmUoRXhlY1N0YXRlKiwgUHJlZmVycmVkUHJpbWl0aXZlVHlwZSkgY29uc3Q7CiAgICAg
ICAgIGJvb2wgZ2V0UHJpbWl0aXZlTnVtYmVyKEV4ZWNTdGF0ZSosIGRvdWJsZSYgbnVtYmVyLCBK
U1ZhbHVlJikgY29uc3Q7CiAgICAgICAgIGJvb2wgdG9Cb29sZWFuKEV4ZWNTdGF0ZSopIGNvbnN0
OwotICAgICAgICB2aXJ0dWFsIGRvdWJsZSB0b051bWJlcihFeGVjU3RhdGUqKSBjb25zdDsKKyAg
ICAgICAgZG91YmxlIHRvTnVtYmVyKEV4ZWNTdGF0ZSopIGNvbnN0OwogICAgICAgICB2aXJ0dWFs
IFVTdHJpbmcgdG9TdHJpbmcoRXhlY1N0YXRlKikgY29uc3Q7CiAgICAgICAgIEpTT2JqZWN0KiB0
b09iamVjdChFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCopIGNvbnN0OwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05vdEFuT2JqZWN0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3BwCmluZGV4IGUxNGE2OGJk
OTRmYTE0ZWUwY2Q2NGQwZjM0MjdhYTJjYzQ2ZGI5ZDkuLjI4NzlkN2U0YTJlZDE1NWNiMGJjNTUy
MDFjYmY1NjNjMDM3YzI2M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTTm90QW5PYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTTm90QW5PYmplY3QuY3BwCkBAIC00NSwxMiArNDUsNiBAQCBKU1ZhbHVlIEpTTm90QW5PYmpl
Y3Q6OmRlZmF1bHRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUp
IGNvbgogICAgIHJldHVybiBqc051bWJlcigwKTsKIH0KIAotZG91YmxlIEpTTm90QW5PYmplY3Q6
OnRvTnVtYmVyKEV4ZWNTdGF0ZSogZXhlYykgY29uc3QKLXsKLSAgICBBU1NFUlRfVU5VU0VEKGV4
ZWMsIGV4ZWMtPmhhZEV4Y2VwdGlvbigpKTsKLSAgICByZXR1cm4gc3RkOjpudW1lcmljX2xpbWl0
czxkb3VibGU+OjpxdWlldF9OYU4oKTsKLX0KLQogVVN0cmluZyBKU05vdEFuT2JqZWN0Ojp0b1N0
cmluZyhFeGVjU3RhdGUqIGV4ZWMpIGNvbnN0CiB7CiAgICAgQVNTRVJUX1VOVVNFRChleGVjLCBl
eGVjLT5oYWRFeGNlcHRpb24oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU05vdEFuT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U05vdEFuT2JqZWN0LmgKaW5kZXggYjhmMGZhYTg1NjIyNjIzYzIwNzljOWM5YzcxMzdkN2Q3YjI4
NTFmNy4uNGEwYWRmYmFhZmY3Mzc2YzA0Mzk1MTY0YWE0NjVlZDM5NjhmNmNlNyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOb3RBbk9iamVjdC5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuaApAQCAtNjYsNyArNjYs
NiBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgICAgICAvLyBKU1ZhbHVlIG1ldGhvZHMKICAgICAg
ICAgdmlydHVhbCBKU1ZhbHVlIGRlZmF1bHRWYWx1ZShFeGVjU3RhdGUqLCBQcmVmZXJyZWRQcmlt
aXRpdmVUeXBlKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIoRXhlY1N0
YXRlKikgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwgVVN0cmluZyB0b1N0cmluZyhFeGVjU3RhdGUq
KSBjb25zdDsKIAogICAgICAgICAvLyBKU09iamVjdCBtZXRob2RzCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNPYmplY3QuaAppbmRleCAzYWQ3MGM1MGFhZDYxYWQzN2ZjYzJmYTliOTA0
YTcwYjM3ZmYzM2IyLi5mNDg3OWNlODExMTA5ODE4N2QyNGI0ZTk0OTQwYmZmOTQ1MjIzNjEwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmgKQEAgLTE0MCw3ICsxNDAs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgSlNWYWx1ZSB0b1ByaW1pdGl2ZShFeGVjU3Rh
dGUqLCBQcmVmZXJyZWRQcmltaXRpdmVUeXBlID0gTm9QcmVmZXJlbmNlKSBjb25zdDsKICAgICAg
ICAgYm9vbCB0b0Jvb2xlYW4oRXhlY1N0YXRlKikgY29uc3Q7CiAgICAgICAgIGJvb2wgZ2V0UHJp
bWl0aXZlTnVtYmVyKEV4ZWNTdGF0ZSosIGRvdWJsZSYgbnVtYmVyLCBKU1ZhbHVlJikgY29uc3Q7
Ci0gICAgICAgIHZpcnR1YWwgZG91YmxlIHRvTnVtYmVyKEV4ZWNTdGF0ZSopIGNvbnN0OworICAg
ICAgICBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRlKikgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwg
VVN0cmluZyB0b1N0cmluZyhFeGVjU3RhdGUqKSBjb25zdDsKIAogICAgICAgICB2aXJ0dWFsIEpT
T2JqZWN0KiB0b1RoaXNPYmplY3QoRXhlY1N0YXRlKikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNTdHJpbmcuaAppbmRleCA3MjBkNjJiZDZjZjMyNzMxMTVmNjJmMmUzODE0
MDE5NGRiY2I4OGVmLi5hODBjODAyYzJkZjJhNDYxNzRhMTUxMTJmNDQyYzQ5OWYwMjM2MzRiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmgKQEAgLTQzMCw2ICs0MzAs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgYm9vbCB0b0Jvb2xlYW4oRXhlY1N0YXRlKikg
Y29uc3Q7CiAgICAgICAgIGJvb2wgZ2V0UHJpbWl0aXZlTnVtYmVyKEV4ZWNTdGF0ZSosIGRvdWJs
ZSYgbnVtYmVyLCBKU1ZhbHVlJikgY29uc3Q7CiAgICAgICAgIEpTT2JqZWN0KiB0b09iamVjdChF
eGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCopIGNvbnN0OworICAgICAgICBkb3VibGUgdG9OdW1i
ZXIoRXhlY1N0YXRlKikgY29uc3Q7CiAgICAgICAgIAogICAgICAgICBib29sIGdldFN0cmluZ1By
b3BlcnR5U2xvdChFeGVjU3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJiBwcm9wZXJ0eU5hbWUsIFBy
b3BlcnR5U2xvdCYpOwogICAgICAgICBib29sIGdldFN0cmluZ1Byb3BlcnR5U2xvdChFeGVjU3Rh
dGUqLCB1bnNpZ25lZCBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYpOwpAQCAtNTAxLDcgKzUw
Miw2IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAgICAgfQogICAgICAgICB9CiAKLSAgICAg
ICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRlKikgY29uc3Q7CiAgICAgICAgIHZp
cnR1YWwgVVN0cmluZyB0b1N0cmluZyhFeGVjU3RhdGUqKSBjb25zdDsKIAogICAgICAgICB2aXJ0
dWFsIEpTT2JqZWN0KiB0b1RoaXNPYmplY3QoRXhlY1N0YXRlKikgY29uc3Q7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdEdsdWUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRHbHVl
L0NoYW5nZUxvZwppbmRleCAwZTczNTBmM2IwYzJjZjVkNmJiN2UyN2EyZjEwMWY5NzAwNmUyNDU1
Li44NGU0MmU3MmYyNDRjYTRlMjFlMmJjNWRjMWEzNTQ2MzhlNzBhOGQ5IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdEdsdWUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0R2x1
ZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMS0xMC0xMSAgTWFyayBIYWhuZW5iZXJn
ICA8bWhhaG5lbmJlcmdAYXBwbGUuY29tPgorCisgICAgICAgIERlLXZpcnR1YWxpemVkIEpTQ2Vs
bDo6dG9OdW1iZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY5ODU4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgUmVtb3ZlZCBVc2VyT2JqZWN0SW1wOjp0b051bWJlciBiZWNhdXNlIGl0J3Mgbm8gbG9uZ2Vy
IG5lY2Vzc2FyeSBzaW5jZSAKKyAgICAgICAgSlNPYmplY3Q6OnRvTnVtYmVyIGNhbiBjb3ZlciB0
aGlzIGNhc2UuCisgICAgICAgICogVXNlck9iamVjdEltcC5jcHA6CisgICAgICAgICogVXNlck9i
amVjdEltcC5oOgorCiAyMDExLTEwLTEwICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0Bh
cHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIGdldENhbGxEYXRhVmlydHVhbCBtZXRob2RzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdEdsdWUvVXNlck9iamVjdEltcC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdEdsdWUvVXNlck9iamVjdEltcC5jcHAKaW5kZXggNmY5OWE0Yzg0NjZiNGE1
NTU2ZDlhNzA1NDYwNmRkZTdiYTNjZTk1YS4uNmE3MWEyYzliMmVkMWJhYWFmMzg4MmU2MDY1NGNj
NzU0ODFmNmI5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRHbHVlL1VzZXJPYmplY3RJ
bXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9Vc2VyT2JqZWN0SW1wLmNwcApAQCAt
Mjk0LDQwICsyOTQsNiBAQCBib29sIFVzZXJPYmplY3RJbXA6OnRvQm9vbGVhbihFeGVjU3RhdGUg
KmV4ZWMpIGNvbnN0CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotZG91YmxlIFVzZXJPYmplY3RJ
bXA6OnRvTnVtYmVyKEV4ZWNTdGF0ZSAqZXhlYykgY29uc3QKLXsKLSAgICBkb3VibGUgcmVzdWx0
ID0gMDsKLSAgICBKU1VzZXJPYmplY3QqIGpzT2JqUHRyID0gS0pTVmFsdWVUb0pTT2JqZWN0KHRv
T2JqZWN0KGV4ZWMsIGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMpOwotICAgIENG
VHlwZVJlZiBjZlZhbHVlID0ganNPYmpQdHIgPyBqc09ialB0ci0+Q29weUNGVmFsdWUoKSA6IDA7
Ci0gICAgaWYgKGNmVmFsdWUpCi0gICAgewotICAgICAgICBDRlR5cGVJRCBjZlR5cGUgPSBDRkdl
dFR5cGVJRChjZlZhbHVlKTsKLQotICAgICAgICBpZiAoY2ZWYWx1ZSA9PSBHZXRDRk51bGwoKSkK
LSAgICAgICAgewotICAgICAgICAgICAgLy8KLSAgICAgICAgfQotICAgICAgICBlbHNlIGlmIChj
ZlR5cGUgPT0gQ0ZCb29sZWFuR2V0VHlwZUlEKCkpCi0gICAgICAgIHsKLSAgICAgICAgICAgIGlm
IChjZlZhbHVlID09IGtDRkJvb2xlYW5UcnVlKQotICAgICAgICAgICAgewotICAgICAgICAgICAg
ICAgIHJlc3VsdCA9IDE7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgZWxzZSBp
ZiAoY2ZUeXBlID09IENGU3RyaW5nR2V0VHlwZUlEKCkpCi0gICAgICAgIHsKLSAgICAgICAgICAg
IHJlc3VsdCA9IENGU3RyaW5nR2V0RG91YmxlVmFsdWUoKENGU3RyaW5nUmVmKWNmVmFsdWUpOwot
ICAgICAgICB9Ci0gICAgICAgIGVsc2UgaWYgKGNmVHlwZSA9PSBDRk51bWJlckdldFR5cGVJRCgp
KQotICAgICAgICB7Ci0gICAgICAgICAgICBDRk51bWJlckdldFZhbHVlKChDRk51bWJlclJlZilj
ZlZhbHVlLCBrQ0ZOdW1iZXJEb3VibGVUeXBlLCAmcmVzdWx0KTsKLSAgICAgICAgfQotICAgIH0K
LSAgICBSZWxlYXNlQ0ZUeXBlKGNmVmFsdWUpOwotICAgIGlmIChqc09ialB0cikganNPYmpQdHIt
PlJlbGVhc2UoKTsKLSAgICByZXR1cm4gcmVzdWx0OwotfQotCiBVU3RyaW5nIFVzZXJPYmplY3RJ
bXA6OnRvU3RyaW5nKEV4ZWNTdGF0ZSAqZXhlYykgY29uc3QKIHsKICAgICBVU3RyaW5nIHJlc3Vs
dDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9Vc2VyT2JqZWN0SW1wLmggYi9T
b3VyY2UvSmF2YVNjcmlwdEdsdWUvVXNlck9iamVjdEltcC5oCmluZGV4IGFjZTE5MzM3NjY3NzUz
MGVlMmY2MTM5YzEwZDZhZjdlM2I1MjVkYzQuLmQ0MzRjOTU4ZTVjNWI1YTQzYTExMTQzZGJlZDBi
MWJlMGIzODM5ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9Vc2VyT2JqZWN0
SW1wLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRHbHVlL1VzZXJPYmplY3RJbXAuaApAQCAtNjEs
NyArNjEsNiBAQCBwdWJsaWM6CiAKICAgICBKU1ZhbHVlIHRvUHJpbWl0aXZlKEV4ZWNTdGF0ZSos
IFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgcHJlZmVycmVkVHlwZSA9IE5vUHJlZmVyZW5jZSkgY29u
c3Q7CiAgICAgdmlydHVhbCBib29sIHRvQm9vbGVhbihFeGVjU3RhdGUgKmV4ZWMpIGNvbnN0Owot
ICAgIHZpcnR1YWwgZG91YmxlIHRvTnVtYmVyKEV4ZWNTdGF0ZSAqZXhlYykgY29uc3Q7CiAgICAg
dmlydHVhbCBVU3RyaW5nIHRvU3RyaW5nKEV4ZWNTdGF0ZSAqZXhlYykgY29uc3Q7CiAKICAgICBz
dGF0aWMgdm9pZCB2aXNpdENoaWxkcmVuKEpTQ2VsbCosIFNsb3RWaXNpdG9yJik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110789</attachid>
            <date>2011-10-12 18:39:38 -0700</date>
            <delta_ts>2011-10-13 12:24:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69858-20111012183945.patch</filename>
            <type>text/plain</type>
            <size>12539</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTczMDUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0NhbGxiYWNrT2JqZWN0LmgKaW5kZXggYzk0Njk1NzVmZWNjZWJkNDBkODA2MmE3YWQ1ZWRiNGNh
MmRiMWZkMi4uZDQ2ZjIzMWIyMjEzMzkxMTUwZDNjZDY0OWFiYTg4NzQ0MzM0M2IyOSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmgKQEAgLTE5Myw4ICsx
OTMsNiBAQCBwcml2YXRlOgogCiAgICAgdmlydHVhbCB2b2lkIGdldE93blByb3BlcnR5TmFtZXMo
RXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lQXJyYXkmLCBFbnVtZXJhdGlvbk1vZGUgbW9kZSA9IEV4
Y2x1ZGVEb250RW51bVByb3BlcnRpZXMpOwogCi0gICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIo
RXhlY1N0YXRlKikgY29uc3Q7Ci0KICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3Ry
dWN0RGF0YShDb25zdHJ1Y3REYXRhJik7CiAgICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0Q29u
c3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRhJik7CiAgICAgc3RhdGljIENhbGxUeXBl
IGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdEZ1bmN0aW9ucy5oCmluZGV4IGZkOGM4ZGU3
YzVjNDFhMjdhYTk0YzA2ODg3M2Q2NGE1YzY1ZjY3OTIuLjZiZDhjMzExMzg4Y2RmNmUyYmMwZmNi
ZjM3NjI2YmJmYWUyNjE4ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkv
SlNDYWxsYmFja09iamVjdEZ1bmN0aW9ucy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNDYWxsYmFja09iamVjdEZ1bmN0aW9ucy5oCkBAIC00NzksNDEgKzQ3OSw2IEBAIHZvaWQg
SlNDYWxsYmFja09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eU5hbWVzKEV4ZWNTdGF0ZSog
ZXhlYywgUHJvcGVydHlOYW1lCiB9CiAKIHRlbXBsYXRlIDxjbGFzcyBQYXJlbnQ+Ci1kb3VibGUg
SlNDYWxsYmFja09iamVjdDxQYXJlbnQ+Ojp0b051bWJlcihFeGVjU3RhdGUqIGV4ZWMpIGNvbnN0
Ci17Ci0gICAgLy8gV2UgbmVlZCB0aGlzIGNoZWNrIHRvIGd1YXJkIGFnYWluc3QgdGhlIGNhc2Ug
d2hlcmUgdGhpcyBvYmplY3QgaXMgcmhzIG9mCi0gICAgLy8gYSBiaW5hcnkgZXhwcmVzc2lvbiB3
aGVyZSBsaHMgdGhyZXcgYW4gZXhjZXB0aW9uIGluIGl0cyBjb252ZXJzaW9uIHRvCi0gICAgLy8g
cHJpbWl0aXZlCi0gICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQotICAgICAgICByZXR1cm4g
c3RkOjpudW1lcmljX2xpbWl0czxkb3VibGU+OjpxdWlldF9OYU4oKTsKLSAgICBKU0NvbnRleHRS
ZWYgY3R4ID0gdG9SZWYoZXhlYyk7Ci0gICAgSlNPYmplY3RSZWYgdGhpc1JlZiA9IHRvUmVmKHRo
aXMpOwotICAgIAotICAgIGZvciAoSlNDbGFzc1JlZiBqc0NsYXNzID0gY2xhc3NSZWYoKTsganND
bGFzczsganNDbGFzcyA9IGpzQ2xhc3MtPnBhcmVudENsYXNzKQotICAgICAgICBpZiAoSlNPYmpl
Y3RDb252ZXJ0VG9UeXBlQ2FsbGJhY2sgY29udmVydFRvVHlwZSA9IGpzQ2xhc3MtPmNvbnZlcnRU
b1R5cGUpIHsKLSAgICAgICAgICAgIEpTVmFsdWVSZWYgZXhjZXB0aW9uID0gMDsKLSAgICAgICAg
ICAgIEpTVmFsdWVSZWYgdmFsdWU7Ci0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgQVBJ
Q2FsbGJhY2tTaGltIGNhbGxiYWNrU2hpbShleGVjKTsKLSAgICAgICAgICAgICAgICB2YWx1ZSA9
IGNvbnZlcnRUb1R5cGUoY3R4LCB0aGlzUmVmLCBrSlNUeXBlTnVtYmVyLCAmZXhjZXB0aW9uKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChleGNlcHRpb24pIHsKLSAgICAgICAgICAg
ICAgICB0aHJvd0Vycm9yKGV4ZWMsIHRvSlMoZXhlYywgZXhjZXB0aW9uKSk7Ci0gICAgICAgICAg
ICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoIXZhbHVlKQot
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIAotICAgICAgICAgICAg
SlNWYWx1ZSBqc1ZhbHVlID0gdG9KUyhleGVjLCB2YWx1ZSk7Ci0gICAgICAgICAgICBpZiAoIWpz
VmFsdWUuaXNOdW1iZXIoKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gc3RkOjpudW1lcmljX2xp
bWl0czxkb3VibGU+OjpxdWlldF9OYU4oKTsKLSAgICAgICAgICAgIHJldHVybiBqc1ZhbHVlLmFz
TnVtYmVyKCk7Ci0gICAgICAgIH0KLSAgICAgICAgICAgIAotICAgIHJldHVybiBQYXJlbnQ6OnRv
TnVtYmVyKGV4ZWMpOwotfQotCi10ZW1wbGF0ZSA8Y2xhc3MgUGFyZW50Pgogdm9pZCBKU0NhbGxi
YWNrT2JqZWN0PFBhcmVudD46OnNldFByaXZhdGUodm9pZCogZGF0YSkKIHsKICAgICBtX2NhbGxi
YWNrT2JqZWN0RGF0YS0+cHJpdmF0ZURhdGEgPSBkYXRhOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cK
aW5kZXggMzJhZjkwYmI4YjA5Y2Q4YzkxMGRiNTc1NzhiNWZiZGY3YzY0YWQwZS4uYzc2YzQxMzg4
MWYwZGNiZGM0NGYzNzZmY2Y1MmJkY2FhYTZiMmM1MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMzAgQEAKKzIwMTEtMTAtMTIgIE1hcmsgSGFobmVuYmVyZyAgPG1oYWhuZW5i
ZXJnQGFwcGxlLmNvbT4KKworICAgICAgICBEZS12aXJ0dWFsaXplZCBKU0NlbGw6OnRvTnVtYmVy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02OTg1OAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisKKyAgICAgICAgUmVtb3Zl
ZCBKU0NhbGxiYWNrT2JqZWN0Ojp0b051bWJlciBiZWNhdXNlIGl0cyBubyBsb25nZXIgbmVjZXNz
YXJ5IHNpbmNlIAorICAgICAgICBKU09iamVjdDo6dG9OdW1iZXIgbm93IHN1ZmZpY2VzIHNpbmNl
IHdlIGltcGxpY2l0bHkgYWRkIHZhbHVlT2YgdG8gYW4gb2JqZWN0J3MKKyAgICAgICAgcHJvdG90
eXBlIHdoZW5ldmVyIGEgY29udmVydFRvVHlwZSBjYWxsYmFjayBpcyBwcm92aWRlZC4KKyAgICAg
ICAgKiBBUEkvSlNDYWxsYmFja09iamVjdC5oOgorICAgICAgICAqIEFQSS9KU0NhbGxiYWNrT2Jq
ZWN0RnVuY3Rpb25zLmg6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUudmNwcm9qL0phdmFTY3Jp
cHRDb3JlL0phdmFTY3JpcHRDb3JlLmRlZjoKKworICAgICAgICBEZS12aXJ0dWFsaXplZCBKU0Nl
bGw6OnRvTnVtYmVyLCBKU09iamVjdDo6dG9OdW1iZXIsIGFuZCBKU1N0cmluZzo6dG9OdW1iZXIu
CisgICAgICAgICogcnVudGltZS9KU0NlbGwuY3BwOgorICAgICAgICAoSlNDOjpKU0NlbGw6OnRv
TnVtYmVyKToKKyAgICAgICAgKiBydW50aW1lL0pTQ2VsbC5oOgorICAgICAgICAqIHJ1bnRpbWUv
SlNPYmplY3QuaDoKKyAgICAgICAgKiBydW50aW1lL0pTU3RyaW5nLmg6CisKKyAgICAgICAgUmVt
b3ZlZCBKU05vdEFuT2JqZWN0Ojp0b051bWJlciBiZWNhdXNlIGl0cyByZXN1bHQgZG9lc24ndCBt
YXR0ZXIgYW5kIGl0IGltcGxlbWVudHMgCisgICAgICAgIGRlZmF1bHRWYWx1ZSwgdGhlcmVmb3Jl
IEpTT2JqZWN0Ojp0b051bWJlciBjYW4gY292ZXIgaXRzIGNhc2UuCisgICAgICAgICogcnVudGlt
ZS9KU05vdEFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTTm90QW5PYmplY3QuaDoK
KwogMjAxMS0xMC0xMiAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJhY2xvdWdoQGFwcGxlLmNvbT4K
IAogICAgICAgICBFcnJyaywgcmV2ZXJ0IGFjY2lkZW50YWwgY29tbWl0IQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29y
ZS9KYXZhU2NyaXB0Q29yZS5kZWYgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENv
cmUudmNwcm9qL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmRlZgppbmRleCBlMjUwYjVj
ZWRlYzE0NmVjMWZhOGNiYmU5MGJmODAxMjViYzA2MzUyLi45NzNiYzM4ZmY5ZWQwYmI1YWU0YTk2
ODE5ZWJlZGIyZTAzMTIzNmIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2
YVNjcmlwdENvcmUudmNwcm9qL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmRlZgorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmNwcm9qL0phdmFTY3JpcHRD
b3JlL0phdmFTY3JpcHRDb3JlLmRlZgpAQCAtMzQ2LDkgKzM0Niw2IEBAIEVYUE9SVFMKICAgICA/
dGxzS2V5c0BXVEZAQFlBUEFLWFoKICAgICA/dG9JbnQzMkBKU0NAQFlBSE5AWgogICAgID90b0lu
dGVnZXJASlNWYWx1ZUBKU0NAQFFCRU5QQVZFeGVjU3RhdGVAMkBAWgotICAgID90b051bWJlckBK
U0NlbGxASlNDQEBVQkVOUEFWRXhlY1N0YXRlQDJAQFoKLSAgICA/dG9OdW1iZXJASlNPYmplY3RA
SlNDQEBVQkVOUEFWRXhlY1N0YXRlQDJAQFoKLSAgICA/dG9OdW1iZXJASlNTdHJpbmdASlNDQEBF
QkVOUEFWRXhlY1N0YXRlQDJAQFoKICAgICA/dG9OdW1iZXJTbG93Q2FzZUBKU1ZhbHVlQEpTQ0BA
QUJFTlBBVkV4ZWNTdGF0ZUAyQEBaCiAgICAgP3RvT2JqZWN0QEpTQ2VsbEBKU0NAQFFCRVBBVkpT
T2JqZWN0QDJAUEFWRXhlY1N0YXRlQDJAUEFWSlNHbG9iYWxPYmplY3RAMkBAWgogICAgID90b09i
amVjdFNsb3dDYXNlQEpTVmFsdWVASlNDQEBBQkVQQVZKU09iamVjdEAyQFBBVkV4ZWNTdGF0ZUAy
QFBBVkpTR2xvYmFsT2JqZWN0QDJAQFoKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQ2VsbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Nl
bGwuY3BwCmluZGV4IDMxMTIxZjMzOWM2NGY5NmU4MWVkODBiMjUxYmZjZDg1MDVkZmIzYTEuLmZl
MGM1Mjc1ZWRkZTRmZWZiY2I5ZWI1OTNmMGE1MWE3YmYyN2VkMmUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcApAQCAtMTYyLDEwICsxNjIsMTEgQEAgYm9vbCBKU0Nl
bGw6OmdldFByaW1pdGl2ZU51bWJlcihFeGVjU3RhdGUqIGV4ZWMsIGRvdWJsZSYgbnVtYmVyLCBK
U1ZhbHVlJiB2YWx1ZSkKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgSlNPYmplY3QqPih0
aGlzKS0+Z2V0UHJpbWl0aXZlTnVtYmVyKGV4ZWMsIG51bWJlciwgdmFsdWUpOwogfQogCi1kb3Vi
bGUgSlNDZWxsOjp0b051bWJlcihFeGVjU3RhdGUqKSBjb25zdAotewotICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwotICAgIHJldHVybiAwOworZG91YmxlIEpTQ2VsbDo6dG9OdW1iZXIoRXhlY1N0
YXRlKiBleGVjKSBjb25zdAoreyAKKyAgICBpZiAoaXNTdHJpbmcoKSkKKyAgICAgICAgcmV0dXJu
IHN0YXRpY19jYXN0PGNvbnN0IEpTU3RyaW5nKj4odGhpcyktPnRvTnVtYmVyKGV4ZWMpOworICAg
IHJldHVybiBzdGF0aWNfY2FzdDxjb25zdCBKU09iamVjdCo+KHRoaXMpLT50b051bWJlcihleGVj
KTsKIH0KIAogVVN0cmluZyBKU0NlbGw6OnRvU3RyaW5nKEV4ZWNTdGF0ZSogZXhlYykgY29uc3QK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgKaW5kZXggNzFjODJhMzhlZTJiZDI2
OTc1NDMyMzcyOTVkYTZmZjU0MTcwMmMyZS4uODM2MTliZDk5NzNkNWI0YjkwNWU3MjA1NzUwOWI5
OGNmNjYxYTdjOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlND
ZWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgKQEAgLTgx
LDcgKzgxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIEpTVmFsdWUgdG9QcmltaXRpdmUo
RXhlY1N0YXRlKiwgUHJlZmVycmVkUHJpbWl0aXZlVHlwZSkgY29uc3Q7CiAgICAgICAgIGJvb2wg
Z2V0UHJpbWl0aXZlTnVtYmVyKEV4ZWNTdGF0ZSosIGRvdWJsZSYgbnVtYmVyLCBKU1ZhbHVlJikg
Y29uc3Q7CiAgICAgICAgIGJvb2wgdG9Cb29sZWFuKEV4ZWNTdGF0ZSopIGNvbnN0OwotICAgICAg
ICB2aXJ0dWFsIGRvdWJsZSB0b051bWJlcihFeGVjU3RhdGUqKSBjb25zdDsKKyAgICAgICAgZG91
YmxlIHRvTnVtYmVyKEV4ZWNTdGF0ZSopIGNvbnN0OwogICAgICAgICBVU3RyaW5nIHRvU3RyaW5n
KEV4ZWNTdGF0ZSopIGNvbnN0OwogICAgICAgICBKU09iamVjdCogdG9PYmplY3QoRXhlY1N0YXRl
KiwgSlNHbG9iYWxPYmplY3QqKSBjb25zdDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNOb3RBbk9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU05vdEFuT2JqZWN0LmNwcAppbmRleCAwOGY1ZjEwZDAxOGEzMWFlNmE0NGI5Y2I5
YmNhMjQ4YzMzNWFmNTE2Li4yYWY3NGZkYTFiMDZiOTI0ZTU2NjNjNTg3NmMxYjc2MTIzNTEzOGZh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05vdEFuT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05vdEFuT2JqZWN0LmNw
cApAQCAtNDUsMTIgKzQ1LDYgQEAgSlNWYWx1ZSBKU05vdEFuT2JqZWN0OjpkZWZhdWx0VmFsdWUo
RXhlY1N0YXRlKiBleGVjLCBQcmVmZXJyZWRQcmltaXRpdmVUeXBlKSBjb24KICAgICByZXR1cm4g
anNOdW1iZXIoMCk7CiB9CiAKLWRvdWJsZSBKU05vdEFuT2JqZWN0Ojp0b051bWJlcihFeGVjU3Rh
dGUqIGV4ZWMpIGNvbnN0Ci17Ci0gICAgQVNTRVJUX1VOVVNFRChleGVjLCBleGVjLT5oYWRFeGNl
cHRpb24oKSk7Ci0gICAgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1pdHM8ZG91YmxlPjo6cXVpZXRf
TmFOKCk7Ci19Ci0KIGJvb2wgSlNOb3RBbk9iamVjdDo6Z2V0T3duUHJvcGVydHlTbG90KEV4ZWNT
dGF0ZSogZXhlYywgY29uc3QgSWRlbnRpZmllciYgaWRlbnRpZmllciwgUHJvcGVydHlTbG90JiBz
bG90KQogewogICAgIHJldHVybiBnZXRPd25Qcm9wZXJ0eVNsb3QodGhpcywgZXhlYywgaWRlbnRp
Zmllciwgc2xvdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U05vdEFuT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05vdEFuT2Jq
ZWN0LmgKaW5kZXggOGU0ZjA5Y2JlNmM4NWQxYzYyM2JlMzgwODI3NDNhYjQyZGM3OGZhNS4uOTM0
YWE2YzFiMmVjNTM1NmEyOTI1ZTE5Yjk2ODEzMGExMmNlOTEyOCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOb3RBbk9iamVjdC5oCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuaApAQCAtNjYsNyArNjYsNiBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogICAgICAgICAvLyBKU1ZhbHVlIG1ldGhvZHMKICAgICAgICAgdmlydHVh
bCBKU1ZhbHVlIGRlZmF1bHRWYWx1ZShFeGVjU3RhdGUqLCBQcmVmZXJyZWRQcmltaXRpdmVUeXBl
KSBjb25zdDsKLSAgICAgICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRlKikgY29u
c3Q7CiAKICAgICAgICAgLy8gSlNPYmplY3QgbWV0aG9kcwogICAgICAgICB2aXJ0dWFsIGJvb2wg
Z2V0T3duUHJvcGVydHlTbG90KEV4ZWNTdGF0ZSosIGNvbnN0IElkZW50aWZpZXImIHByb3BlcnR5
TmFtZSwgUHJvcGVydHlTbG90Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU09iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmpl
Y3QuaAppbmRleCAzYTg0MDlkMzc2NmU5YjY5OGJiODg3ZjJmYjQ3MTgwN2ZhYWEwOTAyLi5mN2Fi
ZjNlYzhlOTE0MjBhNjFkNjU3MjE3NzQ0ZjEzOWNiZjMzNTBhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTT2JqZWN0LmgKQEAgLTE0MCw3ICsxNDAsNyBAQCBuYW1lc3BhY2UgSlND
IHsKICAgICAgICAgSlNWYWx1ZSB0b1ByaW1pdGl2ZShFeGVjU3RhdGUqLCBQcmVmZXJyZWRQcmlt
aXRpdmVUeXBlID0gTm9QcmVmZXJlbmNlKSBjb25zdDsKICAgICAgICAgYm9vbCB0b0Jvb2xlYW4o
RXhlY1N0YXRlKikgY29uc3Q7CiAgICAgICAgIGJvb2wgZ2V0UHJpbWl0aXZlTnVtYmVyKEV4ZWNT
dGF0ZSosIGRvdWJsZSYgbnVtYmVyLCBKU1ZhbHVlJikgY29uc3Q7Ci0gICAgICAgIHZpcnR1YWwg
ZG91YmxlIHRvTnVtYmVyKEV4ZWNTdGF0ZSopIGNvbnN0OworICAgICAgICBkb3VibGUgdG9OdW1i
ZXIoRXhlY1N0YXRlKikgY29uc3Q7CiAgICAgICAgIFVTdHJpbmcgdG9TdHJpbmcoRXhlY1N0YXRl
KikgY29uc3Q7CiAKICAgICAgICAgdmlydHVhbCBKU09iamVjdCogdG9UaGlzT2JqZWN0KEV4ZWNT
dGF0ZSopIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNTdHJpbmcuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmgKaW5k
ZXggMGMwMTYzMzM4MDFkYzBjZjY1OGYxNWZjYTg0MDMyMTg4YzIzMTlmZS4uM2VlZDg5M2Q3OGZh
MTgxNTE3ZDJmOTcwMWEzYTUzN2FlZTZjODEwMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNTdHJpbmcuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1N0cmluZy5oCkBAIC00MzEsNiArNDMxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAg
ICAgIGJvb2wgZ2V0UHJpbWl0aXZlTnVtYmVyKEV4ZWNTdGF0ZSosIGRvdWJsZSYgbnVtYmVyLCBK
U1ZhbHVlJikgY29uc3Q7CiAgICAgICAgIEpTT2JqZWN0KiB0b09iamVjdChFeGVjU3RhdGUqLCBK
U0dsb2JhbE9iamVjdCopIGNvbnN0OwogICAgICAgICBVU3RyaW5nIHRvU3RyaW5nKEV4ZWNTdGF0
ZSopIGNvbnN0OworICAgICAgICBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRlKikgY29uc3Q7CiAg
ICAgICAgIAogICAgICAgICBib29sIGdldFN0cmluZ1Byb3BlcnR5U2xvdChFeGVjU3RhdGUqLCBj
b25zdCBJZGVudGlmaWVyJiBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYpOwogICAgICAgICBi
b29sIGdldFN0cmluZ1Byb3BlcnR5U2xvdChFeGVjU3RhdGUqLCB1bnNpZ25lZCBwcm9wZXJ0eU5h
bWUsIFByb3BlcnR5U2xvdCYpOwpAQCAtNTAyLDggKzUwMyw2IEBAIG5hbWVzcGFjZSBKU0Mgewog
ICAgICAgICAgICAgfQogICAgICAgICB9CiAKLSAgICAgICAgdmlydHVhbCBkb3VibGUgdG9OdW1i
ZXIoRXhlY1N0YXRlKikgY29uc3Q7Ci0KICAgICAgICAgdmlydHVhbCBKU09iamVjdCogdG9UaGlz
T2JqZWN0KEV4ZWNTdGF0ZSopIGNvbnN0OwogCiAgICAgICAgIC8vIEFjdHVhbGx5IGdldFByb3Bl
cnR5U2xvdCwgbm90IGdldE93blByb3BlcnR5U2xvdCAoc2VlIEpTQ2VsbCkuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdEdsdWUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRHbHVl
L0NoYW5nZUxvZwppbmRleCA4NDA2ZDQzYWIyYzVhMWIzZTA4YjAyZTcyYjUyZmJkYzE1MDlkZjUy
Li4yM2RmMmYwY2RkNjE3NTBjZDI4YWYzMDM5MDU4OGU3NzEyZWYyZWE1IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdEdsdWUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0R2x1
ZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSwxNyBAQAogMjAxMS0xMC0xMiAgTWFyayBIYWhuZW5iZXJn
ICA8bWhhaG5lbmJlcmdAYXBwbGUuY29tPgogCisgICAgICAgIERlLXZpcnR1YWxpemVkIEpTQ2Vs
bDo6dG9OdW1iZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY5ODU4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgUmVtb3ZlZCBVc2VyT2JqZWN0SW1wOjp0b051bWJlciBiZWNhdXNlIGl0J3Mgbm8gbG9uZ2Vy
IG5lY2Vzc2FyeSBzaW5jZSAKKyAgICAgICAgSlNPYmplY3Q6OnRvTnVtYmVyIGNhbiBjb3ZlciB0
aGlzIGNhc2UuCisgICAgICAgICogVXNlck9iamVjdEltcC5jcHA6CisgICAgICAgICogVXNlck9i
amVjdEltcC5oOgorCisyMDExLTEwLTEyICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0Bh
cHBsZS5jb20+CisKICAgICAgICAgRGUtdmlydHVhbGl6ZSBKU0NlbGw6OnRvU3RyaW5nCiAgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02OTY3NwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdEdsdWUvVXNlck9iamVjdEltcC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdEdsdWUvVXNlck9iamVjdEltcC5jcHAKaW5kZXggYWJmOGQwYzIwOTAxNjEyM2E3
YmVlNDlmNmVlMDVmNTcxYmEyMmY2Ny4uNTU1NzBmMGI2ZDVkZjVmYTQyN2Q5MzE0YzA5NzQ0Y2Zh
NjQ2NjBhMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRHbHVlL1VzZXJPYmplY3RJbXAu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9Vc2VyT2JqZWN0SW1wLmNwcApAQCAtMjk0
LDQwICsyOTQsNiBAQCBib29sIFVzZXJPYmplY3RJbXA6OnRvQm9vbGVhbihFeGVjU3RhdGUgKmV4
ZWMpIGNvbnN0CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotZG91YmxlIFVzZXJPYmplY3RJbXA6
OnRvTnVtYmVyKEV4ZWNTdGF0ZSAqZXhlYykgY29uc3QKLXsKLSAgICBkb3VibGUgcmVzdWx0ID0g
MDsKLSAgICBKU1VzZXJPYmplY3QqIGpzT2JqUHRyID0gS0pTVmFsdWVUb0pTT2JqZWN0KHRvT2Jq
ZWN0KGV4ZWMsIGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMpOwotICAgIENGVHlw
ZVJlZiBjZlZhbHVlID0ganNPYmpQdHIgPyBqc09ialB0ci0+Q29weUNGVmFsdWUoKSA6IDA7Ci0g
ICAgaWYgKGNmVmFsdWUpCi0gICAgewotICAgICAgICBDRlR5cGVJRCBjZlR5cGUgPSBDRkdldFR5
cGVJRChjZlZhbHVlKTsKLQotICAgICAgICBpZiAoY2ZWYWx1ZSA9PSBHZXRDRk51bGwoKSkKLSAg
ICAgICAgewotICAgICAgICAgICAgLy8KLSAgICAgICAgfQotICAgICAgICBlbHNlIGlmIChjZlR5
cGUgPT0gQ0ZCb29sZWFuR2V0VHlwZUlEKCkpCi0gICAgICAgIHsKLSAgICAgICAgICAgIGlmIChj
ZlZhbHVlID09IGtDRkJvb2xlYW5UcnVlKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAg
IHJlc3VsdCA9IDE7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgZWxzZSBpZiAo
Y2ZUeXBlID09IENGU3RyaW5nR2V0VHlwZUlEKCkpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHJl
c3VsdCA9IENGU3RyaW5nR2V0RG91YmxlVmFsdWUoKENGU3RyaW5nUmVmKWNmVmFsdWUpOwotICAg
ICAgICB9Ci0gICAgICAgIGVsc2UgaWYgKGNmVHlwZSA9PSBDRk51bWJlckdldFR5cGVJRCgpKQot
ICAgICAgICB7Ci0gICAgICAgICAgICBDRk51bWJlckdldFZhbHVlKChDRk51bWJlclJlZiljZlZh
bHVlLCBrQ0ZOdW1iZXJEb3VibGVUeXBlLCAmcmVzdWx0KTsKLSAgICAgICAgfQotICAgIH0KLSAg
ICBSZWxlYXNlQ0ZUeXBlKGNmVmFsdWUpOwotICAgIGlmIChqc09ialB0cikganNPYmpQdHItPlJl
bGVhc2UoKTsKLSAgICByZXR1cm4gcmVzdWx0OwotfQotCiB2b2lkIFVzZXJPYmplY3RJbXA6OnZp
c2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxsLCBTbG90VmlzaXRvciYgdmlzaXRvcikKIHsKICAgICBV
c2VyT2JqZWN0SW1wKiB0aGlzT2JqZWN0ID0gc3RhdGljX2Nhc3Q8VXNlck9iamVjdEltcCo+KGNl
bGwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRHbHVlL1VzZXJPYmplY3RJbXAuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9Vc2VyT2JqZWN0SW1wLmgKaW5kZXggNjZiNWZkZDBmZjIx
YjJhZGY4N2JkOGY2ODIxZmZlOWRiZWJlMjA5ZS4uNzkwMDcxYmZhODNhODgyNjg0ZWRlNWMzZjE3
ZmM0MmE4YTFiZDk3YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRHbHVlL1VzZXJPYmpl
Y3RJbXAuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdEdsdWUvVXNlck9iamVjdEltcC5oCkBAIC02
MSw3ICs2MSw2IEBAIHB1YmxpYzoKIAogICAgIEpTVmFsdWUgdG9QcmltaXRpdmUoRXhlY1N0YXRl
KiwgUHJlZmVycmVkUHJpbWl0aXZlVHlwZSBwcmVmZXJyZWRUeXBlID0gTm9QcmVmZXJlbmNlKSBj
b25zdDsKICAgICB2aXJ0dWFsIGJvb2wgdG9Cb29sZWFuKEV4ZWNTdGF0ZSAqZXhlYykgY29uc3Q7
Ci0gICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRlICpleGVjKSBjb25zdDsKIAog
ICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZpc2l0b3ImKTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>