<?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>56422</bug_id>
          
          <creation_ts>2011-03-15 15:52:41 -0700</creation_ts>
          <short_desc>Removed a few more deprecatedAppends, and removed HeapRoot&lt;T&gt;</short_desc>
          <delta_ts>2011-03-15 23:56:55 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>368005</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2011-03-15 15:52:41 -0700</bug_when>
    <thetext>Removed a few more deprecatedAppends, and removed HeapRoot&lt;T&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368011</commentid>
    <comment_count>1</comment_count>
      <attachid>85867</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2011-03-15 15:56:44 -0700</bug_when>
    <thetext>Created attachment 85867
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368012</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-03-15 15:58:25 -0700</bug_when>
    <thetext>Attachment 85867 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/JavaScriptCore/ChangeLog&apos;, u&apos;Source...&quot; exit_code: 1

Source/JavaScriptCore/runtime/SmallStrings.h:36:  Code inside a namespace should not be indented.  [whitespace/indent] [4]
Total errors found: 1 in 13 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>368020</commentid>
    <comment_count>3</comment_count>
      <attachid>85867</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2011-03-15 16:14:57 -0700</bug_when>
    <thetext>Comment on attachment 85867
Patch

A nice follow up would be a list append to HeapRootMarker that could then be used by HandleStack</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368029</commentid>
    <comment_count>4</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2011-03-15 16:30:01 -0700</bug_when>
    <thetext>Committed r81191: &lt;http://trac.webkit.org/changeset/81191&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368226</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-03-15 23:56:55 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/81191 might have broken WinCE Release (Build)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85867</attachid>
            <date>2011-03-15 15:56:44 -0700</date>
            <delta_ts>2011-03-15 16:14:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56422-20110315155643.patch</filename>
            <type>text/plain</type>
            <size>18675</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gODExODUpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNTMgQEAK
KzIwMTEtMDMtMTUgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmVkIGEgZmV3IG1v
cmUgZGVwcmVjYXRlZEFwcGVuZHMsIGFuZCByZW1vdmVkIEhlYXBSb290PFQ+CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjQyMgorICAgICAgICAKKyAg
ICAgICAgQWRkZWQgSGVhcFJvb3RNYXJrZXIsIGEgcHJpdmlsZWdlZCBjbGFzcyBmb3IgbWFya2lu
ZyBkaXJlY3QgaGVhcCByb290cworICAgICAgICB0aGF0IGFyZSBpdGVyYXRlZCBkdXJpbmcgZWFj
aCBnYXJiYWdlIGNvbGxlY3Rpb24uIFRoaXMgaXMgZWFzaWVyIHRvIHVzZQorICAgICAgICBhbmQg
bW9yZSByZWxpYWJsZSB0aGFuIEhlYXBSb290PFQ+LCBzbyBJJ3ZlIHJlbW92ZWQgSGVhcFJvb3Q8
VD4uCisKKyAgICAgICAgKiBkZWJ1Z2dlci9EZWJ1Z2dlci5jcHA6CisgICAgICAgIChKU0M6OmV2
YWx1YXRlSW5HbG9iYWxDYWxsRnJhbWUpOgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2VyQ2Fs
bEZyYW1lLmNwcDoKKyAgICAgICAgKEpTQzo6RGVidWdnZXJDYWxsRnJhbWU6OmV2YWx1YXRlKToK
KyAgICAgICAgKiBpbnRlcnByZXRlci9DYWxsRnJhbWUuaDoKKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjpleGNlcHRpb24pOgorICAgICAgICAqIGppdC9KSVRTdHVicy5jcHA6CisgICAgICAgIChK
U0M6OkRFRklORV9TVFVCX0ZVTkNUSU9OKToKKyAgICAgICAgKiBydW50aW1lL0NvbXBsZXRpb24u
Y3BwOgorICAgICAgICAoSlNDOjpldmFsdWF0ZSk6IGV4Y2VwdGlvbiBpcyBubyBsb25nZXIgYSBI
ZWFwUm9vdDxUPiwgc28gbm8gbmVlZCB0bworICAgICAgICBjYWxsIC5nZXQoKSBvbiBpdC4KKwor
ICAgICAgICAqIHJ1bnRpbWUvSGVhcC5jcHA6CisgICAgICAgIChKU0M6OkhlYXA6Om1hcmtQcm90
ZWN0ZWRPYmplY3RzKToKKyAgICAgICAgKEpTQzo6SGVhcDo6bWFya1RlbXBTb3J0VmVjdG9ycyk6
CisgICAgICAgIChKU0M6OkhlYXA6Om1hcmtSb290cyk6CisgICAgICAgICogcnVudGltZS9IZWFw
Lmg6IFVwZGF0ZWQgdG8gdXNlIEhlYXBSb290TWFya2VyLgorCisgICAgICAgICogcnVudGltZS9K
U0NlbGwuaDoKKyAgICAgICAgKEpTQzo6SlNDZWxsOjpNYXJrU3RhY2s6OmFwcGVuZCk6IEFkZGVk
IHByaXZhdGUgZnVuY3Rpb25zIGZvcgorICAgICAgICBIZWFwUm9vdE1hcmtlciB0byB1c2UuCisK
KyAgICAgICAgKiBydW50aW1lL0pTR2xvYmFsRGF0YS5oOiBleGNlcHRpb24gaXMgbm8gbG9uZ2Vy
IGEgSGVhcFJvb3Q8VD4uCisKKyAgICAgICAgKiBydW50aW1lL01hcmtTdGFjay5oOgorICAgICAg
ICAoSlNDOjpIZWFwUm9vdE1hcmtlcjo6SGVhcFJvb3RNYXJrZXIpOgorICAgICAgICAoSlNDOjpI
ZWFwUm9vdE1hcmtlcjo6bWFyayk6IEFkZGVkIHByaXZhdGUgZnVuY3Rpb25zIGZvcgorICAgICAg
ICBIZWFwUm9vdE1hcmtlciB0byB1c2UuCisKKyAgICAgICAgKiBydW50aW1lL1NtYWxsU3RyaW5n
cy5jcHA6CisgICAgICAgIChKU0M6OlNtYWxsU3RyaW5nczo6bWFya0NoaWxkcmVuKTogVXBkYXRl
ZCB0byB1c2UgSGVhcFJvb3RNYXJrZXIuCisKKyAgICAgICAgKiBydW50aW1lL1NtYWxsU3RyaW5n
cy5oOgorICAgICAgICAoSlNDOjpTbWFsbFN0cmluZ3M6OmVtcHR5U3RyaW5nKToKKyAgICAgICAg
KEpTQzo6U21hbGxTdHJpbmdzOjpzaW5nbGVDaGFyYWN0ZXJTdHJpbmcpOgorICAgICAgICAoSlND
OjpTbWFsbFN0cmluZ3M6OnNpbmdsZUNoYXJhY3RlclN0cmluZ3MpOiBVcGRhdGVkIHRvIHVzZSBI
ZWFwUm9vdE1hcmtlci4KKworICAgICAgICAqIHJ1bnRpbWUvV3JpdGVCYXJyaWVyLmg6IFJlbW92
ZWQgSGVhcFJvb3Q8VD4uCisKIDIwMTEtMDMtMTUgIEdhdmluIEJhcnJhY2xvdWdoICA8YmFycmFj
bG91Z2hAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXIuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlci5jcHAJKHJldmlzaW9u
IDgxMDk3KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTIyLDcgKzEyMiw3IEBAIEpTVmFsdWUgZXZhbHVhdGVJbkdsb2Jh
bENhbGxGcmFtZShjb25zdCAKIAogICAgIEV2YWxFeGVjdXRhYmxlKiBldmFsID0gRXZhbEV4ZWN1
dGFibGU6OmNyZWF0ZShnbG9iYWxDYWxsRnJhbWUsIG1ha2VTb3VyY2Uoc2NyaXB0KSwgZmFsc2Up
OwogICAgIGlmICghZXZhbCkgewotICAgICAgICBleGNlcHRpb24gPSBnbG9iYWxEYXRhLmV4Y2Vw
dGlvbi5nZXQoKTsKKyAgICAgICAgZXhjZXB0aW9uID0gZ2xvYmFsRGF0YS5leGNlcHRpb247CiAg
ICAgICAgIGdsb2JhbERhdGEuZXhjZXB0aW9uID0gSlNWYWx1ZSgpOwogICAgICAgICByZXR1cm4g
ZXhjZXB0aW9uOwogICAgIH0KQEAgLTEzMiw3ICsxMzIsNyBAQCBKU1ZhbHVlIGV2YWx1YXRlSW5H
bG9iYWxDYWxsRnJhbWUoY29uc3QgCiAKICAgICBKU1ZhbHVlIHJlc3VsdCA9IGdsb2JhbERhdGEu
aW50ZXJwcmV0ZXItPmV4ZWN1dGUoZXZhbCwgZ2xvYmFsQ2FsbEZyYW1lLCBnbG9iYWxPYmplY3Qs
IGdsb2JhbENhbGxGcmFtZS0+c2NvcGVDaGFpbigpKTsKICAgICBpZiAoZ2xvYmFsRGF0YS5leGNl
cHRpb24pIHsKLSAgICAgICAgZXhjZXB0aW9uID0gZ2xvYmFsRGF0YS5leGNlcHRpb24uZ2V0KCk7
CisgICAgICAgIGV4Y2VwdGlvbiA9IGdsb2JhbERhdGEuZXhjZXB0aW9uOwogICAgICAgICBnbG9i
YWxEYXRhLmV4Y2VwdGlvbiA9IEpTVmFsdWUoKTsKICAgICB9CiAgICAgQVNTRVJUKHJlc3VsdCk7
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dl
ckNhbGxGcmFtZS5jcHAJKHJldmlzaW9uIDgxMDk3KQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTEsNyAr
OTEsNyBAQCBKU1ZhbHVlIERlYnVnZ2VyQ2FsbEZyYW1lOjpldmFsdWF0ZShjb25zCiAgICAgSlNH
bG9iYWxEYXRhJiBnbG9iYWxEYXRhID0gbV9jYWxsRnJhbWUtPmdsb2JhbERhdGEoKTsKICAgICBF
dmFsRXhlY3V0YWJsZSogZXZhbCA9IEV2YWxFeGVjdXRhYmxlOjpjcmVhdGUobV9jYWxsRnJhbWUs
IG1ha2VTb3VyY2Uoc2NyaXB0KSwgbV9jYWxsRnJhbWUtPmNvZGVCbG9jaygpLT5pc1N0cmljdE1v
ZGUoKSk7CiAgICAgaWYgKGdsb2JhbERhdGEuZXhjZXB0aW9uKSB7Ci0gICAgICAgIGV4Y2VwdGlv
biA9IGdsb2JhbERhdGEuZXhjZXB0aW9uLmdldCgpOworICAgICAgICBleGNlcHRpb24gPSBnbG9i
YWxEYXRhLmV4Y2VwdGlvbjsKICAgICAgICAgZ2xvYmFsRGF0YS5leGNlcHRpb24gPSBKU1ZhbHVl
KCk7CiAgICAgfQogCkBAIC0xMDEsNyArMTAxLDcgQEAgSlNWYWx1ZSBEZWJ1Z2dlckNhbGxGcmFt
ZTo6ZXZhbHVhdGUoY29ucwogCiAgICAgSlNWYWx1ZSByZXN1bHQgPSBnbG9iYWxEYXRhLmludGVy
cHJldGVyLT5leGVjdXRlKGV2YWwsIG1fY2FsbEZyYW1lLCB0aGlzT2JqZWN0KCksIG1fY2FsbEZy
YW1lLT5zY29wZUNoYWluKCkpOwogICAgIGlmIChnbG9iYWxEYXRhLmV4Y2VwdGlvbikgewotICAg
ICAgICBleGNlcHRpb24gPSBnbG9iYWxEYXRhLmV4Y2VwdGlvbi5nZXQoKTsKKyAgICAgICAgZXhj
ZXB0aW9uID0gZ2xvYmFsRGF0YS5leGNlcHRpb247CiAgICAgICAgIGdsb2JhbERhdGEuZXhjZXB0
aW9uID0gSlNWYWx1ZSgpOwogICAgIH0KICAgICBBU1NFUlQocmVzdWx0KTsKSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9DYWxsRnJhbWUuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvQ2FsbEZyYW1lLmgJKHJldmlzaW9uIDgx
MDk3KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0NhbGxGcmFtZS5oCSh3
b3JraW5nIGNvcHkpCkBAIC02NSw3ICs2NSw3IEBAIG5hbWVzcGFjZSBKU0MgIHsKICAgICAgICAg
Ly8gQnV0IHRoZXkncmUgdXNlZCBpbiBtYW55IHBsYWNlcyBpbiBsZWdhY3kgY29kZSwgc28gdGhl
eSdyZSBub3QgZ29pbmcgYXdheSBhbnkgdGltZSBzb29uLgogCiAgICAgICAgIHZvaWQgY2xlYXJF
eGNlcHRpb24oKSB7IGdsb2JhbERhdGEoKS5leGNlcHRpb24gPSBKU1ZhbHVlKCk7IH0KLSAgICAg
ICAgSlNWYWx1ZSBleGNlcHRpb24oKSBjb25zdCB7IHJldHVybiBnbG9iYWxEYXRhKCkuZXhjZXB0
aW9uLmdldCgpOyB9CisgICAgICAgIEpTVmFsdWUgZXhjZXB0aW9uKCkgY29uc3QgeyByZXR1cm4g
Z2xvYmFsRGF0YSgpLmV4Y2VwdGlvbjsgfQogICAgICAgICBib29sIGhhZEV4Y2VwdGlvbigpIGNv
bnN0IHsgcmV0dXJuIGdsb2JhbERhdGEoKS5leGNlcHRpb247IH0KIAogICAgICAgICBjb25zdCBD
b21tb25JZGVudGlmaWVycyYgcHJvcGVydHlOYW1lcygpIGNvbnN0IHsgcmV0dXJuICpnbG9iYWxE
YXRhKCkucHJvcGVydHlOYW1lczsgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRTdHVicy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRT
dHVicy5jcHAJKHJldmlzaW9uIDgxMDk3KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRTdHVicy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk0MywxNyArOTQzLDE3IEBAIHN0YXRpYyBO
RVZFUl9JTkxJTkUgdm9pZCB0aHJvd1N0YWNrT3ZlcmYKIAogI2RlZmluZSBDSEVDS19GT1JfRVhD
RVBUSU9OKCkgXAogICAgIGRvIHsgXAotICAgICAgICBpZiAoVU5MSUtFTFkoc3RhY2tGcmFtZS5n
bG9iYWxEYXRhLT5leGNlcHRpb24uZ2V0KCkpKSBcCisgICAgICAgIGlmIChVTkxJS0VMWShzdGFj
a0ZyYW1lLmdsb2JhbERhdGEtPmV4Y2VwdGlvbikpIFwKICAgICAgICAgICAgIFZNX1RIUk9XX0VY
Q0VQVElPTigpOyBcCiAgICAgfSB3aGlsZSAoMCkKICNkZWZpbmUgQ0hFQ0tfRk9SX0VYQ0VQVElP
Tl9BVF9FTkQoKSBcCiAgICAgZG8geyBcCi0gICAgICAgIGlmIChVTkxJS0VMWShzdGFja0ZyYW1l
Lmdsb2JhbERhdGEtPmV4Y2VwdGlvbi5nZXQoKSkpIFwKKyAgICAgICAgaWYgKFVOTElLRUxZKHN0
YWNrRnJhbWUuZ2xvYmFsRGF0YS0+ZXhjZXB0aW9uKSkgXAogICAgICAgICAgICAgVk1fVEhST1df
RVhDRVBUSU9OX0FUX0VORCgpOyBcCiAgICAgfSB3aGlsZSAoMCkKICNkZWZpbmUgQ0hFQ0tfRk9S
X0VYQ0VQVElPTl9WT0lEKCkgXAogICAgIGRvIHsgXAotICAgICAgICBpZiAoVU5MSUtFTFkoc3Rh
Y2tGcmFtZS5nbG9iYWxEYXRhLT5leGNlcHRpb24uZ2V0KCkpKSB7IFwKKyAgICAgICAgaWYgKFVO
TElLRUxZKHN0YWNrRnJhbWUuZ2xvYmFsRGF0YS0+ZXhjZXB0aW9uKSkgeyBcCiAgICAgICAgICAg
ICBWTV9USFJPV19FWENFUFRJT05fQVRfRU5EKCk7IFwKICAgICAgICAgICAgIHJldHVybjsgXAog
ICAgICAgICB9IFwKQEAgLTM0NzIsNyArMzQ3Miw3IEBAIERFRklORV9TVFVCX0ZVTkNUSU9OKHZv
aWQqLCB2bV90aHJvdykKIHsKICAgICBTVFVCX0lOSVRfU1RBQ0tfRlJBTUUoc3RhY2tGcmFtZSk7
CiAgICAgSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhID0gc3RhY2tGcmFtZS5nbG9iYWxEYXRhOwot
ICAgIEV4Y2VwdGlvbkhhbmRsZXIgaGFuZGxlciA9IGppdFRocm93KGdsb2JhbERhdGEsIHN0YWNr
RnJhbWUuY2FsbEZyYW1lLCBnbG9iYWxEYXRhLT5leGNlcHRpb24uZ2V0KCksIGdsb2JhbERhdGEt
PmV4Y2VwdGlvbkxvY2F0aW9uKTsKKyAgICBFeGNlcHRpb25IYW5kbGVyIGhhbmRsZXIgPSBqaXRU
aHJvdyhnbG9iYWxEYXRhLCBzdGFja0ZyYW1lLmNhbGxGcmFtZSwgZ2xvYmFsRGF0YS0+ZXhjZXB0
aW9uLCBnbG9iYWxEYXRhLT5leGNlcHRpb25Mb2NhdGlvbik7CiAgICAgU1RVQl9TRVRfUkVUVVJO
X0FERFJFU1MoaGFuZGxlci5jYXRjaFJvdXRpbmUpOwogICAgIHJldHVybiBoYW5kbGVyLmNhbGxG
cmFtZTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBsZXRpb24u
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBsZXRp
b24uY3BwCShyZXZpc2lvbiA4MTA5NykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0NvbXBsZXRpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NCw3ICs1NCw3IEBAIENvbXBsZXRp
b24gZXZhbHVhdGUoRXhlY1N0YXRlKiBleGVjLCBTY28KIAogICAgIFByb2dyYW1FeGVjdXRhYmxl
KiBwcm9ncmFtID0gUHJvZ3JhbUV4ZWN1dGFibGU6OmNyZWF0ZShleGVjLCBzb3VyY2UpOwogICAg
IGlmICghcHJvZ3JhbSkgewotICAgICAgICBKU1ZhbHVlIGV4Y2VwdGlvbiA9IGV4ZWMtPmdsb2Jh
bERhdGEoKS5leGNlcHRpb24uZ2V0KCk7CisgICAgICAgIEpTVmFsdWUgZXhjZXB0aW9uID0gZXhl
Yy0+Z2xvYmFsRGF0YSgpLmV4Y2VwdGlvbjsKICAgICAgICAgZXhlYy0+Z2xvYmFsRGF0YSgpLmV4
Y2VwdGlvbiA9IEpTVmFsdWUoKTsKICAgICAgICAgcmV0dXJuIENvbXBsZXRpb24oVGhyb3csIGV4
Y2VwdGlvbik7CiAgICAgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSGVh
cC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSGVhcC5j
cHAJKHJldmlzaW9uIDgxMDk3KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSGVh
cC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE1MSwxMSArMTUxLDExIEBAIGJvb2wgSGVhcDo6dW5w
cm90ZWN0KEpTVmFsdWUgaykKICAgICByZXR1cm4gbV9wcm90ZWN0ZWRWYWx1ZXMucmVtb3ZlKGsu
YXNDZWxsKCkpOwogfQogCi12b2lkIEhlYXA6Om1hcmtQcm90ZWN0ZWRPYmplY3RzKE1hcmtTdGFj
ayYgbWFya1N0YWNrKQordm9pZCBIZWFwOjptYXJrUHJvdGVjdGVkT2JqZWN0cyhIZWFwUm9vdE1h
cmtlciYgaGVhcFJvb3RNYXJrZXIpCiB7CiAgICAgUHJvdGVjdENvdW50U2V0OjppdGVyYXRvciBl
bmQgPSBtX3Byb3RlY3RlZFZhbHVlcy5lbmQoKTsKICAgICBmb3IgKFByb3RlY3RDb3VudFNldDo6
aXRlcmF0b3IgaXQgPSBtX3Byb3RlY3RlZFZhbHVlcy5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQp
Ci0gICAgICAgIG1hcmtTdGFjay5kZXByZWNhdGVkQXBwZW5kKCZpdC0+Zmlyc3QpOworICAgICAg
ICBoZWFwUm9vdE1hcmtlci5tYXJrKCZpdC0+Zmlyc3QpOwogfQogCiB2b2lkIEhlYXA6OnB1c2hU
ZW1wU29ydFZlY3RvcihWZWN0b3I8VmFsdWVTdHJpbmdQYWlyPiogdGVtcFZlY3RvcikKQEAgLTE2
OSw3ICsxNjksNyBAQCB2b2lkIEhlYXA6OnBvcFRlbXBTb3J0VmVjdG9yKFZlY3RvcjxWYWx1CiAg
ICAgbV90ZW1wU29ydGluZ1ZlY3RvcnMucmVtb3ZlTGFzdCgpOwogfQogICAgIAotdm9pZCBIZWFw
OjptYXJrVGVtcFNvcnRWZWN0b3JzKE1hcmtTdGFjayYgbWFya1N0YWNrKQordm9pZCBIZWFwOjpt
YXJrVGVtcFNvcnRWZWN0b3JzKEhlYXBSb290TWFya2VyJiBoZWFwUm9vdE1hcmtlcikKIHsKICAg
ICB0eXBlZGVmIFZlY3RvcjxWZWN0b3I8VmFsdWVTdHJpbmdQYWlyPiogPiBWZWN0b3JPZlZhbHVl
U3RyaW5nVmVjdG9yczsKIApAQCAtMTgwLDcgKzE4MCw3IEBAIHZvaWQgSGVhcDo6bWFya1RlbXBT
b3J0VmVjdG9ycyhNYXJrU3RhY2sKICAgICAgICAgVmVjdG9yPFZhbHVlU3RyaW5nUGFpcj46Oml0
ZXJhdG9yIHZlY3RvckVuZCA9IHRlbXBTb3J0aW5nVmVjdG9yLT5lbmQoKTsKICAgICAgICAgZm9y
IChWZWN0b3I8VmFsdWVTdHJpbmdQYWlyPjo6aXRlcmF0b3IgdmVjdG9ySXQgPSB0ZW1wU29ydGlu
Z1ZlY3Rvci0+YmVnaW4oKTsgdmVjdG9ySXQgIT0gdmVjdG9yRW5kOyArK3ZlY3Rvckl0KSB7CiAg
ICAgICAgICAgICBpZiAodmVjdG9ySXQtPmZpcnN0KQotICAgICAgICAgICAgICAgIG1hcmtTdGFj
ay5kZXByZWNhdGVkQXBwZW5kKCZ2ZWN0b3JJdC0+Zmlyc3QpOworICAgICAgICAgICAgICAgIGhl
YXBSb290TWFya2VyLm1hcmsoJnZlY3Rvckl0LT5maXJzdCk7CiAgICAgICAgIH0KICAgICB9CiB9
CkBAIC0yMTUsMjIgKzIxNSwyMSBAQCB2b2lkIEhlYXA6Om1hcmtSb290cygpCiAgICAgbV9tYXJr
ZWRTcGFjZS5jbGVhck1hcmtzKCk7CiAKICAgICBNYXJrU3RhY2smIG1hcmtTdGFjayA9IG1fbWFy
a1N0YWNrOworICAgIEhlYXBSb290TWFya2VyIGhlYXBSb290TWFya2VyKG1hcmtTdGFjayk7CisK
ICAgICBtYXJrU3RhY2suYXBwZW5kKGNvbnNlcnZhdGl2ZVJvb3RzKTsKICAgICBtYXJrU3RhY2su
ZHJhaW4oKTsKIAotICAgIC8vIE1hcmsgZXhwbGljaXRseSByZWdpc3RlcmVkIHJvb3RzLgotICAg
IG1hcmtQcm90ZWN0ZWRPYmplY3RzKG1hcmtTdGFjayk7CisgICAgbWFya1Byb3RlY3RlZE9iamVj
dHMoaGVhcFJvb3RNYXJrZXIpOwogICAgIG1hcmtTdGFjay5kcmFpbigpOwogICAgIAotICAgIC8v
IE1hcmsgdGVtcG9yYXJ5IHZlY3RvciBmb3IgQXJyYXkgc29ydGluZwotICAgIG1hcmtUZW1wU29y
dFZlY3RvcnMobWFya1N0YWNrKTsKKyAgICBtYXJrVGVtcFNvcnRWZWN0b3JzKGhlYXBSb290TWFy
a2VyKTsKICAgICBtYXJrU3RhY2suZHJhaW4oKTsKIAotICAgIC8vIE1hcmsgbWlzYy4gb3RoZXIg
cm9vdHMuCiAgICAgaWYgKG1fbWFya0xpc3RTZXQgJiYgbV9tYXJrTGlzdFNldC0+c2l6ZSgpKQog
ICAgICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlcjo6bWFya0xpc3RzKG1hcmtTdGFjaywgKm1fbWFy
a0xpc3RTZXQpOwogICAgIGlmIChtX2dsb2JhbERhdGEtPmV4Y2VwdGlvbikKLSAgICAgICAgbWFy
a1N0YWNrLmFwcGVuZCgmbV9nbG9iYWxEYXRhLT5leGNlcHRpb24pOworICAgICAgICBoZWFwUm9v
dE1hcmtlci5tYXJrKCZtX2dsb2JhbERhdGEtPmV4Y2VwdGlvbik7CiAgICAgaWYgKG1fZ2xvYmFs
RGF0YS0+Zmlyc3RTdHJpbmdpZmllclRvTWFyaykKICAgICAgICAgSlNPTk9iamVjdDo6bWFya1N0
cmluZ2lmaWVycyhtYXJrU3RhY2ssIG1fZ2xvYmFsRGF0YS0+Zmlyc3RTdHJpbmdpZmllclRvTWFy
ayk7CiAgICAgbWFya1N0YWNrLmRyYWluKCk7CkBAIC0yMzksNyArMjM4LDcgQEAgdm9pZCBIZWFw
OjptYXJrUm9vdHMoKQogCiAgICAgLy8gTWFyayB0aGUgc21hbGwgc3RyaW5ncyBjYWNoZSBsYXN0
LCBzaW5jZSBpdCB3aWxsIGNsZWFyIGl0c2VsZiBpZiBub3RoaW5nCiAgICAgLy8gZWxzZSBoYXMg
bWFya2VkIGl0LgotICAgIG1fZ2xvYmFsRGF0YS0+c21hbGxTdHJpbmdzLm1hcmtDaGlsZHJlbiht
YXJrU3RhY2spOworICAgIG1fZ2xvYmFsRGF0YS0+c21hbGxTdHJpbmdzLm1hcmtDaGlsZHJlbiho
ZWFwUm9vdE1hcmtlcik7CiAKICAgICBtYXJrU3RhY2suZHJhaW4oKTsKICAgICBtYXJrU3RhY2su
Y29tcGFjdCgpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSGVhcC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0hlYXAuaAkocmV2aXNp
b24gODEwOTcpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9IZWFwLmgJKHdvcmtp
bmcgY29weSkKQEAgLTMzLDYgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICBjbGFzcyBH
Q0FjdGl2aXR5Q2FsbGJhY2s7CiAgICAgY2xhc3MgR2xvYmFsQ29kZUJsb2NrOworICAgIGNsYXNz
IEhlYXBSb290TWFya2VyOwogICAgIGNsYXNzIEpTQ2VsbDsKICAgICBjbGFzcyBKU0dsb2JhbERh
dGE7CiAgICAgY2xhc3MgSlNWYWx1ZTsKQEAgLTEwOSw4ICsxMTAsOCBAQCBuYW1lc3BhY2UgSlND
IHsKICAgICAgICAgdm9pZCByZXBvcnRFeHRyYU1lbW9yeUNvc3RTbG93Q2FzZShzaXplX3QpOwog
CiAgICAgICAgIHZvaWQgbWFya1Jvb3RzKCk7Ci0gICAgICAgIHZvaWQgbWFya1Byb3RlY3RlZE9i
amVjdHMoTWFya1N0YWNrJik7Ci0gICAgICAgIHZvaWQgbWFya1RlbXBTb3J0VmVjdG9ycyhNYXJr
U3RhY2smKTsKKyAgICAgICAgdm9pZCBtYXJrUHJvdGVjdGVkT2JqZWN0cyhIZWFwUm9vdE1hcmtl
ciYpOworICAgICAgICB2b2lkIG1hcmtUZW1wU29ydFZlY3RvcnMoSGVhcFJvb3RNYXJrZXImKTsK
IAogICAgICAgICBlbnVtIFN3ZWVwVG9nZ2xlIHsgRG9Ob3RTd2VlcCwgRG9Td2VlcCB9OwogICAg
ICAgICB2b2lkIHJlc2V0KFN3ZWVwVG9nZ2xlKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQ2VsbC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQ2VsbC5oCShyZXZpc2lvbiA4MTA5NykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQ2VsbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNzEsNiArMzcxLDE4IEBAIG5h
bWVzcGFjZSBKU0MgewogICAgICAgICBpbnRlcm5hbEFwcGVuZCgqdmFsdWUpOwogICAgIH0KICAg
ICAKKyAgICBBTFdBWVNfSU5MSU5FIHZvaWQgTWFya1N0YWNrOjphcHBlbmQoSlNWYWx1ZSogdmFs
dWUpCisgICAgeworICAgICAgICBBU1NFUlQodmFsdWUpOworICAgICAgICBpbnRlcm5hbEFwcGVu
ZCgqdmFsdWUpOworICAgIH0KKworICAgIEFMV0FZU19JTkxJTkUgdm9pZCBNYXJrU3RhY2s6OmFw
cGVuZChKU0NlbGwqKiB2YWx1ZSkKKyAgICB7CisgICAgICAgIEFTU0VSVCh2YWx1ZSk7CisgICAg
ICAgIGludGVybmFsQXBwZW5kKCp2YWx1ZSk7CisgICAgfQorCiAgICAgQUxXQVlTX0lOTElORSB2
b2lkIE1hcmtTdGFjazo6ZGVwcmVjYXRlZEFwcGVuZChSZWdpc3RlciogdmFsdWUpCiAgICAgewog
ICAgICAgICBBU1NFUlQodmFsdWUpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNHbG9iYWxEYXRhLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNHbG9iYWxEYXRhLmgJKHJldmlzaW9uIDgxMDk3KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxEYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTIxMSw3ICsy
MTEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgVGVybWluYXRvciB0ZXJtaW5hdG9yOwog
ICAgICAgICBIZWFwIGhlYXA7CiAKLSAgICAgICAgSGVhcFJvb3Q8VW5rbm93bj4gZXhjZXB0aW9u
OworICAgICAgICBKU1ZhbHVlIGV4Y2VwdGlvbjsKICNpZiBFTkFCTEUoSklUKQogICAgICAgICBS
ZXR1cm5BZGRyZXNzUHRyIGV4Y2VwdGlvbkxvY2F0aW9uOwogI2VuZGlmCkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXJrU3RhY2suaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXJrU3RhY2suaAkocmV2aXNpb24gODEwOTcpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXJrU3RhY2suaAkod29ya2luZyBjb3B5KQpA
QCAtOTAsNiArOTAsMTAgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIH0KIAogICAgIHByaXZh
dGU6CisgICAgICAgIGZyaWVuZCBjbGFzcyBIZWFwUm9vdE1hcmtlcjsgLy8gQWxsb3dlZCB0byBt
YXJrIGEgSlNWYWx1ZSogb3IgSlNDZWxsKiogZGlyZWN0bHkuCisgICAgICAgIHZvaWQgYXBwZW5k
KEpTVmFsdWUqKTsKKyAgICAgICAgdm9pZCBhcHBlbmQoSlNDZWxsKiopOworCiAgICAgICAgIHZv
aWQgaW50ZXJuYWxBcHBlbmQoSlNDZWxsKik7CiAgICAgICAgIHZvaWQgaW50ZXJuYWxBcHBlbmQo
SlNWYWx1ZSk7CiAgICAgICAgIHZvaWQgbWFya0NoaWxkcmVuKEpTQ2VsbCopOwpAQCAtMjA1LDcg
KzIwOSw0NSBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgYm9vbCBtX2lzRHJhaW5pbmc7CiAj
ZW5kaWYKICAgICB9OwotICAgIAotfQorCisgICAgLy8gUHJpdmlsZWdlZCBjbGFzcyBmb3IgbWFy
a2luZyBKU1ZhbHVlcyBkaXJlY3RseS4gSXQgaXMgb25seSBzYWZlIHRvIHVzZQorICAgIC8vIHRo
aXMgY2xhc3MgdG8gbWFyayBkaXJlY3QgaGVhcCByb290cyB0aGF0IGFyZSBtYXJrZWQgZHVyaW5n
IGV2ZXJ5IEdDIHBhc3MuCisgICAgLy8gQWxsIG90aGVyIHJlZmVyZW5jZXMgc2hvdWxkIGJlIHdy
YXBwZWQgaW4gV3JpdGVCYXJyaWVycyBhbmQgbWFya2VkIHRocm91Z2gKKyAgICAvLyB0aGUgTWFy
a1N0YWNrLgorICAgIGNsYXNzIEhlYXBSb290TWFya2VyIHsKKyAgICBwcml2YXRlOgorICAgICAg
ICBmcmllbmQgY2xhc3MgSGVhcDsKKyAgICAgICAgSGVhcFJvb3RNYXJrZXIoTWFya1N0YWNrJik7
CisgICAgICAgIAorICAgIHB1YmxpYzoKKyAgICAgICAgdm9pZCBtYXJrKEpTVmFsdWUqKTsKKyAg
ICAgICAgdm9pZCBtYXJrKEpTU3RyaW5nKiopOworICAgICAgICB2b2lkIG1hcmsoSlNDZWxsKiop
OworCisgICAgcHJpdmF0ZToKKyAgICAgICAgTWFya1N0YWNrJiBtX21hcmtTdGFjazsKKyAgICB9
OworCisgICAgaW5saW5lIEhlYXBSb290TWFya2VyOjpIZWFwUm9vdE1hcmtlcihNYXJrU3RhY2sm
IG1hcmtTdGFjaykKKyAgICAgICAgOiBtX21hcmtTdGFjayhtYXJrU3RhY2spCisgICAgeworICAg
IH0KKworICAgIGlubGluZSB2b2lkIEhlYXBSb290TWFya2VyOjptYXJrKEpTVmFsdWUqIHNsb3Qp
CisgICAgeworICAgICAgICBtX21hcmtTdGFjay5hcHBlbmQoc2xvdCk7CisgICAgfQorCisgICAg
aW5saW5lIHZvaWQgSGVhcFJvb3RNYXJrZXI6Om1hcmsoSlNTdHJpbmcqKiBzbG90KQorICAgIHsK
KyAgICAgICAgbV9tYXJrU3RhY2suYXBwZW5kKHJlaW50ZXJwcmV0X2Nhc3Q8SlNDZWxsKio+KHNs
b3QpKTsKKyAgICB9CisKKyAgICBpbmxpbmUgdm9pZCBIZWFwUm9vdE1hcmtlcjo6bWFyayhKU0Nl
bGwqKiBzbG90KQorICAgIHsKKyAgICAgICAgbV9tYXJrU3RhY2suYXBwZW5kKHNsb3QpOworICAg
IH0KKworfSAvLyBuYW1lc3BhY2UgSlNDCiAKICNlbmRpZgpJbmRleDogU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU21hbGxTdHJpbmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TbWFsbFN0cmluZ3MuY3BwCShyZXZpc2lvbiA4MTA5NykKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NtYWxsU3RyaW5ncy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTc0LDcgKzc0LDcgQEAgU21hbGxTdHJpbmdzOjp+U21hbGxTdHJpbmdzKCkKIHsK
IH0KIAotdm9pZCBTbWFsbFN0cmluZ3M6Om1hcmtDaGlsZHJlbihNYXJrU3RhY2smIG1hcmtTdGFj
aykKK3ZvaWQgU21hbGxTdHJpbmdzOjptYXJrQ2hpbGRyZW4oSGVhcFJvb3RNYXJrZXImIGhlYXBS
b290TWFya2VyKQogewogICAgIC8qCiAgICAgICAgT3VyIGh5cG90aGVzaXMgaXMgdGhhdCBzbWFs
bCBzdHJpbmdzIGFyZSB2ZXJ5IGNvbW1vbi4gU28sIHdlIGNhY2hlIHRoZW0KQEAgLTg2LDkgKzg2
LDkgQEAgdm9pZCBTbWFsbFN0cmluZ3M6Om1hcmtDaGlsZHJlbihNYXJrU3RhYwogICAgICAgIHNv
LCBpdCdzIHByb2JhYmx5IHJlYXNvbmFibGUgdG8gbWFyayB0aGUgcmVzdC4gSWYgbm90LCB3ZSBj
bGVhciB0aGUgY2FjaGUuCiAgICAgICovCiAKLSAgICBib29sIGlzQW55U3RyaW5nTWFya2VkID0g
aXNNYXJrZWQobV9lbXB0eVN0cmluZy5nZXQoKSk7CisgICAgYm9vbCBpc0FueVN0cmluZ01hcmtl
ZCA9IGlzTWFya2VkKG1fZW1wdHlTdHJpbmcpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkg
PCBzaW5nbGVDaGFyYWN0ZXJTdHJpbmdDb3VudCAmJiAhaXNBbnlTdHJpbmdNYXJrZWQ7ICsraSkK
LSAgICAgICAgaXNBbnlTdHJpbmdNYXJrZWQgPSBpc01hcmtlZChtX3NpbmdsZUNoYXJhY3RlclN0
cmluZ3NbaV0uZ2V0KCkpOworICAgICAgICBpc0FueVN0cmluZ01hcmtlZCA9IGlzTWFya2VkKG1f
c2luZ2xlQ2hhcmFjdGVyU3RyaW5nc1tpXSk7CiAgICAgCiAgICAgaWYgKCFpc0FueVN0cmluZ01h
cmtlZCkgewogICAgICAgICBjbGVhcigpOwpAQCAtOTYsMTAgKzk2LDEwIEBAIHZvaWQgU21hbGxT
dHJpbmdzOjptYXJrQ2hpbGRyZW4oTWFya1N0YWMKICAgICB9CiAgICAgCiAgICAgaWYgKG1fZW1w
dHlTdHJpbmcpCi0gICAgICAgIG1hcmtTdGFjay5hcHBlbmQoJm1fZW1wdHlTdHJpbmcpOworICAg
ICAgICBoZWFwUm9vdE1hcmtlci5tYXJrKCZtX2VtcHR5U3RyaW5nKTsKICAgICBmb3IgKHVuc2ln
bmVkIGkgPSAwOyBpIDwgc2luZ2xlQ2hhcmFjdGVyU3RyaW5nQ291bnQ7ICsraSkgewogICAgICAg
ICBpZiAobV9zaW5nbGVDaGFyYWN0ZXJTdHJpbmdzW2ldKQotICAgICAgICAgICAgbWFya1N0YWNr
LmFwcGVuZCgmbV9zaW5nbGVDaGFyYWN0ZXJTdHJpbmdzW2ldKTsKKyAgICAgICAgICAgIGhlYXBS
b290TWFya2VyLm1hcmsoJm1fc2luZ2xlQ2hhcmFjdGVyU3RyaW5nc1tpXSk7CiAgICAgfQogfQog
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TbWFsbFN0cmluZ3MuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TbWFsbFN0cmluZ3MuaAko
cmV2aXNpb24gODEwOTcpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TbWFsbFN0
cmluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtMzMsNiArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAorICAgIGNsYXNzIEhlYXBSb290TWFya2VyOwogICAgIGNsYXNzIEpTR2xvYmFsRGF0YTsK
ICAgICBjbGFzcyBKU1N0cmluZzsKICAgICBjbGFzcyBNYXJrU3RhY2s7CkBAIC01MCwyNCArNTEs
MjQgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIHsKICAgICAgICAgICAgIGlmICghbV9lbXB0
eVN0cmluZykKICAgICAgICAgICAgICAgICBjcmVhdGVFbXB0eVN0cmluZyhnbG9iYWxEYXRhKTsK
LSAgICAgICAgICAgIHJldHVybiBtX2VtcHR5U3RyaW5nLmdldCgpOworICAgICAgICAgICAgcmV0
dXJuIG1fZW1wdHlTdHJpbmc7CiAgICAgICAgIH0KIAogICAgICAgICBKU1N0cmluZyogc2luZ2xl
Q2hhcmFjdGVyU3RyaW5nKEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSwgdW5zaWduZWQgY2hhciBj
aGFyYWN0ZXIpCiAgICAgICAgIHsKICAgICAgICAgICAgIGlmICghbV9zaW5nbGVDaGFyYWN0ZXJT
dHJpbmdzW2NoYXJhY3Rlcl0pCiAgICAgICAgICAgICAgICAgY3JlYXRlU2luZ2xlQ2hhcmFjdGVy
U3RyaW5nKGdsb2JhbERhdGEsIGNoYXJhY3Rlcik7Ci0gICAgICAgICAgICByZXR1cm4gbV9zaW5n
bGVDaGFyYWN0ZXJTdHJpbmdzW2NoYXJhY3Rlcl0uZ2V0KCk7CisgICAgICAgICAgICByZXR1cm4g
bV9zaW5nbGVDaGFyYWN0ZXJTdHJpbmdzW2NoYXJhY3Rlcl07CiAgICAgICAgIH0KIAogICAgICAg
ICBTdHJpbmdJbXBsKiBzaW5nbGVDaGFyYWN0ZXJTdHJpbmdSZXAodW5zaWduZWQgY2hhciBjaGFy
YWN0ZXIpOwogCi0gICAgICAgIHZvaWQgbWFya0NoaWxkcmVuKE1hcmtTdGFjayYpOworICAgICAg
ICB2b2lkIG1hcmtDaGlsZHJlbihIZWFwUm9vdE1hcmtlciYpOwogICAgICAgICB2b2lkIGNsZWFy
KCk7CiAKICAgICAgICAgdW5zaWduZWQgY291bnQoKSBjb25zdDsKIAotICAgICAgICBKU0NlbGwq
KiBzaW5nbGVDaGFyYWN0ZXJTdHJpbmdzKCkgeyByZXR1cm4gbV9zaW5nbGVDaGFyYWN0ZXJTdHJp
bmdzWzBdLnNsb3QoKTsgfQorICAgICAgICBKU1N0cmluZyoqIHNpbmdsZUNoYXJhY3RlclN0cmlu
Z3MoKSB7IHJldHVybiAmbV9zaW5nbGVDaGFyYWN0ZXJTdHJpbmdzWzBdOyB9CiAKICAgICBwcml2
YXRlOgogICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgc2luZ2xlQ2hhcmFjdGVyU3RyaW5n
Q291bnQgPSBtYXhTaW5nbGVDaGFyYWN0ZXJTdHJpbmcgKyAxOwpAQCAtNzUsOCArNzYsOCBAQCBu
YW1lc3BhY2UgSlNDIHsKICAgICAgICAgdm9pZCBjcmVhdGVFbXB0eVN0cmluZyhKU0dsb2JhbERh
dGEqKTsKICAgICAgICAgdm9pZCBjcmVhdGVTaW5nbGVDaGFyYWN0ZXJTdHJpbmcoSlNHbG9iYWxE
YXRhKiwgdW5zaWduZWQgY2hhcik7CiAKLSAgICAgICAgSGVhcFJvb3Q8SlNTdHJpbmc+IG1fZW1w
dHlTdHJpbmc7Ci0gICAgICAgIEhlYXBSb290PEpTU3RyaW5nPiBtX3NpbmdsZUNoYXJhY3RlclN0
cmluZ3Nbc2luZ2xlQ2hhcmFjdGVyU3RyaW5nQ291bnRdOworICAgICAgICBKU1N0cmluZyogbV9l
bXB0eVN0cmluZzsKKyAgICAgICAgSlNTdHJpbmcqIG1fc2luZ2xlQ2hhcmFjdGVyU3RyaW5nc1tz
aW5nbGVDaGFyYWN0ZXJTdHJpbmdDb3VudF07CiAgICAgICAgIE93blB0cjxTbWFsbFN0cmluZ3NT
dG9yYWdlPiBtX3N0b3JhZ2U7CiAgICAgfTsKIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvV3JpdGVCYXJyaWVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvV3JpdGVCYXJyaWVyLmgJKHJldmlzaW9uIDgxMDk3KQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV3JpdGVCYXJyaWVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTE3
MSw0OCArMTcxLDYgQEAgdGVtcGxhdGUgPHR5cGVuYW1lIFUsIHR5cGVuYW1lIFY+IGlubGluZQog
ICAgIHJldHVybiBsaHMuZ2V0KCkgPT0gcmhzLmdldCgpOwogfQogCi0vLyBGb3IgdXNlIGluIGRh
dGEgbWVtYmVycyB0aGF0IGFyZSBvd25lZCBieSB0aGUgSGVhcC4KLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUPiBjbGFzcyBIZWFwUm9vdCA6IHB1YmxpYyBXcml0ZUJhcnJpZXI8VD4gewotcHJpdmF0ZToK
LSAgICBmcmllbmQgY2xhc3MgSGVhcDsKLSAgICBmcmllbmQgY2xhc3MgSlNHbG9iYWxEYXRhOyAv
LyBGSVhNRTogTW92ZSBIZWFwIHJvb3RzIGZyb20gSlNHbG9iYWxEYXRhIHRvIEhlYXAuCi0gICAg
ZnJpZW5kIGNsYXNzIFNtYWxsU3RyaW5nczsgLy8gRklYTUU6IENvbnZlcnQgU21hbGxTdHJpbmdz
IHRvIHVzZSB3ZWFrIGhhbmRsZXMuCi0KLSAgICBIZWFwUm9vdCgpIHsgfQotICAgIEhlYXBSb290
KFQqIHZhbHVlKQotICAgIHsKLSAgICAgICAgdGhpcy0+c2V0V2l0aG91dFdyaXRlQmFycmllcih2
YWx1ZSk7Ci0gICAgfQotCi1wdWJsaWM6Ci0gICAgSGVhcFJvb3QmIG9wZXJhdG9yPShUKiB2YWx1
ZSkKLSAgICB7Ci0gICAgICAgIHRoaXMtPnNldFdpdGhvdXRXcml0ZUJhcnJpZXIodmFsdWUpOwot
ICAgICAgICByZXR1cm4gKnRoaXM7Ci0gICAgfQotfTsKLQotLy8gRm9yIHVzZSBpbiBkYXRhIG1l
bWJlcnMgdGhhdCBhcmUgb3duZWQgYnkgdGhlIEhlYXAuCi10ZW1wbGF0ZSA8PiBjbGFzcyBIZWFw
Um9vdDxVbmtub3duPiA6IHB1YmxpYyBXcml0ZUJhcnJpZXI8VW5rbm93bj4gewotcHJpdmF0ZToK
LSAgICBmcmllbmQgY2xhc3MgSGVhcDsKLSAgICBmcmllbmQgY2xhc3MgSlNHbG9iYWxEYXRhOyAv
LyBGSVhNRTogTW92ZSBIZWFwIHJvb3RzIGZyb20gSlNHbG9iYWxEYXRhIHRvIEhlYXAuCi0gICAg
ZnJpZW5kIGNsYXNzIFNtYWxsU3RyaW5nczsgLy8gRklYTUU6IENvbnZlcnQgU21hbGxTdHJpbmdz
IHRvIHVzZSB3ZWFrIGhhbmRsZXMuCi0KLSAgICBIZWFwUm9vdCgpIHsgfQotICAgIEhlYXBSb290
KEpTVmFsdWUgdmFsdWUpCi0gICAgewotICAgICAgICB0aGlzLT5zZXRXaXRob3V0V3JpdGVCYXJy
aWVyKHZhbHVlKTsKLSAgICB9Ci0KLXB1YmxpYzoKLSAgICBIZWFwUm9vdCYgb3BlcmF0b3I9KEpT
VmFsdWUgdmFsdWUpCi0gICAgewotICAgICAgICB0aGlzLT5zZXRXaXRob3V0V3JpdGVCYXJyaWVy
KHZhbHVlKTsKLSAgICAgICAgcmV0dXJuICp0aGlzOwotICAgIH0KLX07Ci0KIH0gLy8gbmFtZXNw
YWNlIEpTQwogCiAjZW5kaWYgLy8gV3JpdGVCYXJyaWVyX2gK
</data>
<flag name="review"
          id="78062"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>