<?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>69780</bug_id>
          
          <creation_ts>2011-10-10 13:43:51 -0700</creation_ts>
          <short_desc>Switch last calls from DFGSpeculativeJIT to use callOperation.</short_desc>
          <delta_ts>2011-10-10 14:01: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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Gavin Barraclough">barraclough</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>481118</commentid>
    <comment_count>0</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2011-10-10 13:43:51 -0700</bug_when>
    <thetext>Also, rename type in operations for booleans from Z to B, since Z is the mathematical symbol for integers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481121</commentid>
    <comment_count>1</comment_count>
      <attachid>110397</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2011-10-10 13:46:31 -0700</bug_when>
    <thetext>Created attachment 110397
The patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481128</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-10 13:50:21 -0700</bug_when>
    <thetext>Attachment 110397 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/dfg/DFGOperations.h:77:  DFG_OPERATION is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Source/JavaScriptCore/dfg/DFGOperations.h:78:  DFG_OPERATION is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Source/JavaScriptCore/dfg/DFGOperations.h:82:  DFG_OPERATION is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Source/JavaScriptCore/dfg/DFGOperations.h:83:  DFG_OPERATION is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Source/JavaScriptCore/dfg/DFGOperations.h:88:  DFG_OPERATION is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Source/JavaScriptCore/dfg/DFGOperations.h:89:  DFG_OPERATION is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Total errors found: 6 in 10 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>481136</commentid>
    <comment_count>3</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2011-10-10 14:01:55 -0700</bug_when>
    <thetext>Fixed in r97083</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110397</attachid>
            <date>2011-10-10 13:46:31 -0700</date>
            <delta_ts>2011-10-10 13:48:17 -0700</delta_ts>
            <desc>The patch</desc>
            <filename>69780.patch</filename>
            <type>text/plain</type>
            <size>21295</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gOTcwNzkpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzQgQEAK
KzIwMTEtMTAtMTAgIEdhdmluIEJhcnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBwbGUuY29tPgor
CisgICAgICAgIFN3aXRjaCBsYXN0IGNhbGxzIGZyb20gREZHU3BlY3VsYXRpdmVKSVQgdG8gdXNl
IGNhbGxPcGVyYXRpb24uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD02OTc4MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFsc28sIHJlbmFtZSB0eXBlIGluIG9wZXJhdGlvbnMgZm9yIGJvb2xlYW5zIGZyb20g
WiB0byBCLCBzaW5jZSBaIGlzIHRoZSBtYXRoZW1hdGljYWwgc3ltYm9sIGZvciBpbnRlZ2Vycy4K
KworICAgICAgICAqIGRmZy9ERkdKSVRDb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
REZHOjpKSVRDb2RlR2VuZXJhdG9yOjpub25TcGVjdWxhdGl2ZUNvbXBhcmUpOgorICAgICAgICAq
IGRmZy9ERkdKSVRDb2RlR2VuZXJhdG9yLmg6CisgICAgICAgIChKU0M6OkRGRzo6Y2FsbE9wZXJh
dGlvbik6CisgICAgICAgICogZGZnL0RGR0pJVENvZGVHZW5lcmF0b3IzMl82NC5jcHA6CisgICAg
ICAgIChKU0M6OkRGRzo6SklUQ29kZUdlbmVyYXRvcjo6bm9uU3BlY3VsYXRpdmVQZWVwaG9sZUJy
YW5jaCk6CisgICAgICAgIChKU0M6OkRGRzo6SklUQ29kZUdlbmVyYXRvcjo6bm9uU3BlY3VsYXRp
dmVOb25QZWVwaG9sZUNvbXBhcmUpOgorICAgICAgICAqIGRmZy9ERkdKSVRDb2RlR2VuZXJhdG9y
NjQuY3BwOgorICAgICAgICAoSlNDOjpERkc6OkpJVENvZGVHZW5lcmF0b3I6Om5vblNwZWN1bGF0
aXZlUGVlcGhvbGVCcmFuY2gpOgorICAgICAgICAoSlNDOjpERkc6OkpJVENvZGVHZW5lcmF0b3I6
Om5vblNwZWN1bGF0aXZlTm9uUGVlcGhvbGVDb21wYXJlKToKKyAgICAgICAgKiBkZmcvREZHT3Bl
cmF0aW9ucy5oOgorICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHA6CisgICAgICAg
IChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVQZWVwSG9sZUJyYW5jaCk6CisgICAg
ICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklULmg6CisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0
aXZlSklUMzJfNjQuY3BwOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjpjb21w
YXJlKToKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZSk6CisgICAg
ICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwOgorICAgICAgICAoSlNDOjpERkc6OlNw
ZWN1bGF0aXZlSklUOjpjb21wYXJlKToKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJ
VDo6Y29tcGlsZSk6CisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6CisKIDIwMTEtMTAtMTAgIFl1
cWlhbmcgWGlhbiAgPHl1cWlhbmcueGlhbkBpbnRlbC5jb20+CiAKICAgICAgICAgSlNWQUxVRTMy
XzY0IERGRyBKSVQgLSBidWcgZml4IGZvciBWOCBiZW5jaG1hcmsgY2FzZXMgImNyeXB0byIgYW5k
ICJyYXl0cmFjZSIKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklUQ29kZUdl
bmVyYXRvcjMyXzY0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0pJVENvZGVHZW5lcmF0b3IzMl82NC5jcHAJKHJldmlzaW9uIDk3MDc5KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRDb2RlR2VuZXJhdG9yMzJfNjQuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0xMjUxLDcgKzEyNTEsNyBAQCBib29sIEpJVENvZGVHZW5lcmF0b3I6Om5vblNw
ZWN1bGF0aXZlQ29tCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEpJVENvZGVHZW5lcmF0
b3I6Om5vblNwZWN1bGF0aXZlUGVlcGhvbGVCcmFuY2goTm9kZSYgbm9kZSwgTm9kZUluZGV4IGJy
YW5jaE5vZGVJbmRleCwgTWFjcm9Bc3NlbWJsZXI6OlJlbGF0aW9uYWxDb25kaXRpb24gY29uZCwg
Wl9ERkdPcGVyYXRpb25fRUpKIGhlbHBlckZ1bmN0aW9uKQordm9pZCBKSVRDb2RlR2VuZXJhdG9y
Ojpub25TcGVjdWxhdGl2ZVBlZXBob2xlQnJhbmNoKE5vZGUmIG5vZGUsIE5vZGVJbmRleCBicmFu
Y2hOb2RlSW5kZXgsIE1hY3JvQXNzZW1ibGVyOjpSZWxhdGlvbmFsQ29uZGl0aW9uIGNvbmQsIEJf
REZHT3BlcmF0aW9uX0VKSiBoZWxwZXJGdW5jdGlvbikKIHsKICAgICBOb2RlJiBicmFuY2hOb2Rl
ID0gYXQoYnJhbmNoTm9kZUluZGV4KTsKICAgICBCbG9ja0luZGV4IHRha2VuID0gbV9qaXQuZ3Jh
cGgoKS5ibG9ja0luZGV4Rm9yQnl0ZWNvZGVPZmZzZXQoYnJhbmNoTm9kZS50YWtlbkJ5dGVjb2Rl
T2Zmc2V0KCkpOwpAQCAtMTMyNiw3ICsxMzI2LDcgQEAgdm9pZCBKSVRDb2RlR2VuZXJhdG9yOjpu
b25TcGVjdWxhdGl2ZVBlZQogICAgICAgICBhZGRCcmFuY2gobV9qaXQuanVtcCgpLCBub3RUYWtl
bik7CiB9CiAKLXZvaWQgSklUQ29kZUdlbmVyYXRvcjo6bm9uU3BlY3VsYXRpdmVOb25QZWVwaG9s
ZUNvbXBhcmUoTm9kZSYgbm9kZSwgTWFjcm9Bc3NlbWJsZXI6OlJlbGF0aW9uYWxDb25kaXRpb24g
Y29uZCwgWl9ERkdPcGVyYXRpb25fRUpKIGhlbHBlckZ1bmN0aW9uKQordm9pZCBKSVRDb2RlR2Vu
ZXJhdG9yOjpub25TcGVjdWxhdGl2ZU5vblBlZXBob2xlQ29tcGFyZShOb2RlJiBub2RlLCBNYWNy
b0Fzc2VtYmxlcjo6UmVsYXRpb25hbENvbmRpdGlvbiBjb25kLCBCX0RGR09wZXJhdGlvbl9FSkog
aGVscGVyRnVuY3Rpb24pCiB7CiAgICAgSlNWYWx1ZU9wZXJhbmQgYXJnMSh0aGlzLCBub2RlLmNo
aWxkMSgpKTsKICAgICBKU1ZhbHVlT3BlcmFuZCBhcmcyKHRoaXMsIG5vZGUuY2hpbGQyKCkpOwpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRDb2RlR2VuZXJhdG9yNjQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklUQ29kZUdlbmVy
YXRvcjY0LmNwcAkocmV2aXNpb24gOTcwNzkpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0pJVENvZGVHZW5lcmF0b3I2NC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExODksNyArMTE4
OSw3IEBAIGJvb2wgSklUQ29kZUdlbmVyYXRvcjo6bm9uU3BlY3VsYXRpdmVDb20KICAgICByZXR1
cm4gZmFsc2U7CiB9CiAKLXZvaWQgSklUQ29kZUdlbmVyYXRvcjo6bm9uU3BlY3VsYXRpdmVQZWVw
aG9sZUJyYW5jaChOb2RlJiBub2RlLCBOb2RlSW5kZXggYnJhbmNoTm9kZUluZGV4LCBNYWNyb0Fz
c2VtYmxlcjo6UmVsYXRpb25hbENvbmRpdGlvbiBjb25kLCBaX0RGR09wZXJhdGlvbl9FSkogaGVs
cGVyRnVuY3Rpb24pCit2b2lkIEpJVENvZGVHZW5lcmF0b3I6Om5vblNwZWN1bGF0aXZlUGVlcGhv
bGVCcmFuY2goTm9kZSYgbm9kZSwgTm9kZUluZGV4IGJyYW5jaE5vZGVJbmRleCwgTWFjcm9Bc3Nl
bWJsZXI6OlJlbGF0aW9uYWxDb25kaXRpb24gY29uZCwgQl9ERkdPcGVyYXRpb25fRUpKIGhlbHBl
ckZ1bmN0aW9uKQogewogICAgIE5vZGUmIGJyYW5jaE5vZGUgPSBhdChicmFuY2hOb2RlSW5kZXgp
OwogICAgIEJsb2NrSW5kZXggdGFrZW4gPSBtX2ppdC5ncmFwaCgpLmJsb2NrSW5kZXhGb3JCeXRl
Y29kZU9mZnNldChicmFuY2hOb2RlLnRha2VuQnl0ZWNvZGVPZmZzZXQoKSk7CkBAIC0xMjU5LDcg
KzEyNTksNyBAQCB2b2lkIEpJVENvZGVHZW5lcmF0b3I6Om5vblNwZWN1bGF0aXZlUGVlCiAgICAg
ICAgIGFkZEJyYW5jaChtX2ppdC5qdW1wKCksIG5vdFRha2VuKTsKIH0KIAotdm9pZCBKSVRDb2Rl
R2VuZXJhdG9yOjpub25TcGVjdWxhdGl2ZU5vblBlZXBob2xlQ29tcGFyZShOb2RlJiBub2RlLCBN
YWNyb0Fzc2VtYmxlcjo6UmVsYXRpb25hbENvbmRpdGlvbiBjb25kLCBaX0RGR09wZXJhdGlvbl9F
SkogaGVscGVyRnVuY3Rpb24pCit2b2lkIEpJVENvZGVHZW5lcmF0b3I6Om5vblNwZWN1bGF0aXZl
Tm9uUGVlcGhvbGVDb21wYXJlKE5vZGUmIG5vZGUsIE1hY3JvQXNzZW1ibGVyOjpSZWxhdGlvbmFs
Q29uZGl0aW9uIGNvbmQsIEJfREZHT3BlcmF0aW9uX0VKSiBoZWxwZXJGdW5jdGlvbikKIHsKICAg
ICBKU1ZhbHVlT3BlcmFuZCBhcmcxKHRoaXMsIG5vZGUuY2hpbGQxKCkpOwogICAgIEpTVmFsdWVP
cGVyYW5kIGFyZzIodGhpcywgbm9kZS5jaGlsZDIoKSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0pJVENvZGVHZW5lcmF0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHSklUQ29kZUdlbmVyYXRvci5jcHAJKHJldmlzaW9uIDk3MDc5
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRDb2RlR2VuZXJhdG9yLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMzQ1LDcgKzM0NSw3IEBAIHZvaWQgSklUQ29kZUdlbmVyYXRvcjo6
d3JpdGVCYXJyaWVyKEpTQ2UKICNlbmRpZgogfQogCi1ib29sIEpJVENvZGVHZW5lcmF0b3I6Om5v
blNwZWN1bGF0aXZlQ29tcGFyZShOb2RlJiBub2RlLCBNYWNyb0Fzc2VtYmxlcjo6UmVsYXRpb25h
bENvbmRpdGlvbiBjb25kLCBaX0RGR09wZXJhdGlvbl9FSkogaGVscGVyRnVuY3Rpb24pCitib29s
IEpJVENvZGVHZW5lcmF0b3I6Om5vblNwZWN1bGF0aXZlQ29tcGFyZShOb2RlJiBub2RlLCBNYWNy
b0Fzc2VtYmxlcjo6UmVsYXRpb25hbENvbmRpdGlvbiBjb25kLCBCX0RGR09wZXJhdGlvbl9FSkog
aGVscGVyRnVuY3Rpb24pCiB7CiAgICAgTm9kZUluZGV4IGJyYW5jaE5vZGVJbmRleCA9IGRldGVj
dFBlZXBIb2xlQnJhbmNoKCk7CiAgICAgaWYgKGJyYW5jaE5vZGVJbmRleCAhPSBOb05vZGUpIHsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklUQ29kZUdlbmVyYXRvci5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklUQ29kZUdlbmVyYXRv
ci5oCShyZXZpc2lvbiA5NzA3OSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklU
Q29kZUdlbmVyYXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC03NzQsOSArNzc0LDkgQEAgcHJvdGVj
dGVkOgogICAgIHZvaWQgbm9uU3BlY3VsYXRpdmVQZWVwaG9sZUJyYW5jaE51bGwoTm9kZUluZGV4
IG9wZXJhbmQsIE5vZGVJbmRleCBicmFuY2hOb2RlSW5kZXgsIGJvb2wgaW52ZXJ0ID0gZmFsc2Up
OwogICAgIGJvb2wgbm9uU3BlY3VsYXRpdmVDb21wYXJlTnVsbChOb2RlJiwgTm9kZUluZGV4IG9w
ZXJhbmQsIGJvb2wgaW52ZXJ0ID0gZmFsc2UpOwogICAgIAotICAgIHZvaWQgbm9uU3BlY3VsYXRp
dmVQZWVwaG9sZUJyYW5jaChOb2RlJiwgTm9kZUluZGV4IGJyYW5jaE5vZGVJbmRleCwgTWFjcm9B
c3NlbWJsZXI6OlJlbGF0aW9uYWxDb25kaXRpb24sIFpfREZHT3BlcmF0aW9uX0VKSiBoZWxwZXJG
dW5jdGlvbik7Ci0gICAgdm9pZCBub25TcGVjdWxhdGl2ZU5vblBlZXBob2xlQ29tcGFyZShOb2Rl
JiwgTWFjcm9Bc3NlbWJsZXI6OlJlbGF0aW9uYWxDb25kaXRpb24sIFpfREZHT3BlcmF0aW9uX0VK
SiBoZWxwZXJGdW5jdGlvbik7Ci0gICAgYm9vbCBub25TcGVjdWxhdGl2ZUNvbXBhcmUoTm9kZSYs
IE1hY3JvQXNzZW1ibGVyOjpSZWxhdGlvbmFsQ29uZGl0aW9uLCBaX0RGR09wZXJhdGlvbl9FSkog
aGVscGVyRnVuY3Rpb24pOworICAgIHZvaWQgbm9uU3BlY3VsYXRpdmVQZWVwaG9sZUJyYW5jaChO
b2RlJiwgTm9kZUluZGV4IGJyYW5jaE5vZGVJbmRleCwgTWFjcm9Bc3NlbWJsZXI6OlJlbGF0aW9u
YWxDb25kaXRpb24sIEJfREZHT3BlcmF0aW9uX0VKSiBoZWxwZXJGdW5jdGlvbik7CisgICAgdm9p
ZCBub25TcGVjdWxhdGl2ZU5vblBlZXBob2xlQ29tcGFyZShOb2RlJiwgTWFjcm9Bc3NlbWJsZXI6
OlJlbGF0aW9uYWxDb25kaXRpb24sIEJfREZHT3BlcmF0aW9uX0VKSiBoZWxwZXJGdW5jdGlvbik7
CisgICAgYm9vbCBub25TcGVjdWxhdGl2ZUNvbXBhcmUoTm9kZSYsIE1hY3JvQXNzZW1ibGVyOjpS
ZWxhdGlvbmFsQ29uZGl0aW9uLCBCX0RGR09wZXJhdGlvbl9FSkogaGVscGVyRnVuY3Rpb24pOwog
ICAgIAogICAgIHZvaWQgbm9uU3BlY3VsYXRpdmVQZWVwaG9sZVN0cmljdEVxKE5vZGUmLCBOb2Rl
SW5kZXggYnJhbmNoTm9kZUluZGV4LCBib29sIGludmVydCA9IGZhbHNlKTsKICAgICB2b2lkIG5v
blNwZWN1bGF0aXZlTm9uUGVlcGhvbGVTdHJpY3RFcShOb2RlJiwgYm9vbCBpbnZlcnQgPSBmYWxz
ZSk7CkBAIC0xMDYxLDYgKzEwNjEsMTAgQEAgcHJvdGVjdGVkOgogCiAgICAgICAgIHJldHVybiBh
cHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNoZWNrU2V0UmVzdWx0KG9wZXJhdGlvbiwgcmVzdWx0KTsK
ICAgICB9CisgICAgSklUQ29tcGlsZXI6OkNhbGwgY2FsbE9wZXJhdGlvbihKX0RGR09wZXJhdGlv
bl9FR0kgb3BlcmF0aW9uLCBHUFJSZWcgcmVzdWx0LCBHUFJSZWcgYXJnMSwgdm9pZCogcG9pbnRl
cikKKyAgICB7CisgICAgICAgIHJldHVybiBjYWxsT3BlcmF0aW9uKChKX0RGR09wZXJhdGlvbl9F
UFApb3BlcmF0aW9uLCByZXN1bHQsIGFyZzEsIHBvaW50ZXIpOworICAgIH0KICAgICBKSVRDb21w
aWxlcjo6Q2FsbCBjYWxsT3BlcmF0aW9uKEpfREZHT3BlcmF0aW9uX0VJIG9wZXJhdGlvbiwgR1BS
UmVnIHJlc3VsdCwgSWRlbnRpZmllciogaWRlbnRpZmllcikKICAgICB7CiAgICAgICAgIHJldHVy
biBjYWxsT3BlcmF0aW9uKChKX0RGR09wZXJhdGlvbl9FUClvcGVyYXRpb24sIHJlc3VsdCwgaWRl
bnRpZmllcik7CkBAIC0xMDg1LDYgKzEwODksNyBAQCBwcm90ZWN0ZWQ6CiAKICAgICAgICAgcmV0
dXJuIGFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tTZXRSZXN1bHQob3BlcmF0aW9uLCByZXN1
bHQpOwogICAgIH0KKyAgICAvLyBUaGlzIGFsc28gaGFuZGxlcyBKX0RGR09wZXJhdGlvbl9FUFAh
CiAgICAgSklUQ29tcGlsZXI6OkNhbGwgY2FsbE9wZXJhdGlvbihKX0RGR09wZXJhdGlvbl9FSlAg
b3BlcmF0aW9uLCBHUFJSZWcgcmVzdWx0LCBHUFJSZWcgYXJnMSwgdm9pZCogcG9pbnRlcikKICAg
ICB7CiAgICAgICAgIG1faml0Lm1vdmUoYXJnMSwgR1BSSW5mbzo6YXJndW1lbnRHUFIxKTsKQEAg
LTExMjIsMTQgKzExMjcsMTQgQEAgcHJvdGVjdGVkOgogCiAgICAgICAgIHJldHVybiBhcHBlbmRD
YWxsV2l0aEV4Y2VwdGlvbkNoZWNrU2V0UmVzdWx0KG9wZXJhdGlvbiwgcmVzdWx0KTsKICAgICB9
Ci0gICAgSklUQ29tcGlsZXI6OkNhbGwgY2FsbE9wZXJhdGlvbihaX0RGR09wZXJhdGlvbl9FSiBv
cGVyYXRpb24sIEdQUlJlZyByZXN1bHQsIEdQUlJlZyBhcmcxKQorICAgIEpJVENvbXBpbGVyOjpD
YWxsIGNhbGxPcGVyYXRpb24oQl9ERkdPcGVyYXRpb25fRUogb3BlcmF0aW9uLCBHUFJSZWcgcmVz
dWx0LCBHUFJSZWcgYXJnMSkKICAgICB7CiAgICAgICAgIG1faml0Lm1vdmUoYXJnMSwgR1BSSW5m
bzo6YXJndW1lbnRHUFIxKTsKICAgICAgICAgbV9qaXQubW92ZShHUFJJbmZvOjpjYWxsRnJhbWVS
ZWdpc3RlciwgR1BSSW5mbzo6YXJndW1lbnRHUFIwKTsKIAogICAgICAgICByZXR1cm4gYXBwZW5k
Q2FsbFdpdGhFeGNlcHRpb25DaGVja1NldFJlc3VsdChvcGVyYXRpb24sIHJlc3VsdCk7CiAgICAg
fQotICAgIEpJVENvbXBpbGVyOjpDYWxsIGNhbGxPcGVyYXRpb24oWl9ERkdPcGVyYXRpb25fRUpK
IG9wZXJhdGlvbiwgR1BSUmVnIHJlc3VsdCwgR1BSUmVnIGFyZzEsIEdQUlJlZyBhcmcyKQorICAg
IEpJVENvbXBpbGVyOjpDYWxsIGNhbGxPcGVyYXRpb24oQl9ERkdPcGVyYXRpb25fRUpKIG9wZXJh
dGlvbiwgR1BSUmVnIHJlc3VsdCwgR1BSUmVnIGFyZzEsIEdQUlJlZyBhcmcyKQogICAgIHsKICAg
ICAgICAgc2V0dXBTdHViQXJndW1lbnRzKGFyZzEsIGFyZzIpOwogICAgICAgICBtX2ppdC5tb3Zl
KEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyLCBHUFJJbmZvOjphcmd1bWVudEdQUjApOwpAQCAt
MTE3MCw2ICsxMTc1LDE3IEBAIHByb3RlY3RlZDoKIAogICAgICAgICByZXR1cm4gYXBwZW5kQ2Fs
bFdpdGhFeGNlcHRpb25DaGVjayhvcGVyYXRpb24pOwogICAgIH0KKyAgICBKSVRDb21waWxlcjo6
Q2FsbCBjYWxsT3BlcmF0aW9uKFZfREZHT3BlcmF0aW9uX0VQWkogb3BlcmF0aW9uLCBHUFJSZWcg
YXJnMSwgR1BSUmVnIGFyZzIsIEdQUlJlZyBhcmczKQorICAgIHsKKyAgICAgICAgc2V0dXBTdHVi
QXJndW1lbnRzKGFyZzEsIGFyZzIsIGFyZzMpOworICAgICAgICBtX2ppdC5tb3ZlKEdQUkluZm86
OmNhbGxGcmFtZVJlZ2lzdGVyLCBHUFJJbmZvOjphcmd1bWVudEdQUjApOworCisgICAgICAgIHJl
dHVybiBhcHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNoZWNrKG9wZXJhdGlvbik7CisgICAgfQorICAg
IEpJVENvbXBpbGVyOjpDYWxsIGNhbGxPcGVyYXRpb24oVl9ERkdPcGVyYXRpb25fRUFaSiBvcGVy
YXRpb24sIEdQUlJlZyBhcmcxLCBHUFJSZWcgYXJnMiwgR1BSUmVnIGFyZzMpCisgICAgeworICAg
ICAgICByZXR1cm4gY2FsbE9wZXJhdGlvbigoVl9ERkdPcGVyYXRpb25fRVBaSilvcGVyYXRpb24s
IGFyZzEsIGFyZzIsIGFyZzMpOworICAgIH0KICAgICBKSVRDb21waWxlcjo6Q2FsbCBjYWxsT3Bl
cmF0aW9uKFZfREZHT3BlcmF0aW9uX0VDSkogb3BlcmF0aW9uLCBHUFJSZWcgYXJnMSwgR1BSUmVn
IGFyZzIsIEdQUlJlZyBhcmczKQogICAgIHsKICAgICAgICAgc2V0dXBTdHViQXJndW1lbnRzKGFy
ZzEsIGFyZzIsIGFyZzMpOwpAQCAtMTIxNSw2ICsxMjMxLDE4IEBAIHByb3RlY3RlZDoKIAogICAg
ICAgICByZXR1cm4gYXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja1NldFJlc3VsdChvcGVyYXRp
b24sIHJlc3VsdFRhZywgcmVzdWx0UGF5bG9hZCk7CiAgICAgfQorICAgIEpJVENvbXBpbGVyOjpD
YWxsIGNhbGxPcGVyYXRpb24oSl9ERkdPcGVyYXRpb25fRVBQIG9wZXJhdGlvbiwgR1BSUmVnIHJl
c3VsdFRhZywgR1BSUmVnIHJlc3VsdFBheWxvYWQsIEdQUlJlZyBhcmcxLCB2b2lkKiBwb2ludGVy
KQorICAgIHsKKyAgICAgICAgbV9qaXQucHVzaChKSVRDb21waWxlcjo6VHJ1c3RlZEltbTMyKHJl
aW50ZXJwcmV0X2Nhc3Q8aW50Pihwb2ludGVyKSkpOworICAgICAgICBtX2ppdC5wdXNoKGFyZzEp
OworICAgICAgICBtX2ppdC5wdXNoKEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyKTsKKworICAg
ICAgICByZXR1cm4gYXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja1NldFJlc3VsdChvcGVyYXRp
b24sIHJlc3VsdFRhZywgcmVzdWx0UGF5bG9hZCk7CisgICAgfQorICAgIEpJVENvbXBpbGVyOjpD
YWxsIGNhbGxPcGVyYXRpb24oSl9ERkdPcGVyYXRpb25fRUdJIG9wZXJhdGlvbiwgR1BSUmVnIHJl
c3VsdFRhZywgR1BSUmVnIHJlc3VsdFBheWxvYWQsIEdQUlJlZyBhcmcxLCB2b2lkKiBwb2ludGVy
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGNhbGxPcGVyYXRpb24oKEpfREZHT3BlcmF0aW9uX0VQ
UClvcGVyYXRpb24sIHJlc3VsdFRhZywgcmVzdWx0UGF5bG9hZCwgYXJnMSwgcG9pbnRlcik7Cisg
ICAgfQogICAgIEpJVENvbXBpbGVyOjpDYWxsIGNhbGxPcGVyYXRpb24oSl9ERkdPcGVyYXRpb25f
RVAgb3BlcmF0aW9uLCBHUFJSZWcgcmVzdWx0VGFnLCBHUFJSZWcgcmVzdWx0UGF5bG9hZCwgR1BS
UmVnIGFyZzEpCiAgICAgewogICAgICAgICBtX2ppdC5wdXNoKGFyZzEpOwpAQCAtMTI5Myw3ICsx
MzIxLDcgQEAgcHJvdGVjdGVkOgogCiAgICAgICAgIHJldHVybiBhcHBlbmRDYWxsV2l0aEV4Y2Vw
dGlvbkNoZWNrU2V0UmVzdWx0KG9wZXJhdGlvbiwgcmVzdWx0KTsKICAgICB9Ci0gICAgSklUQ29t
cGlsZXI6OkNhbGwgY2FsbE9wZXJhdGlvbihaX0RGR09wZXJhdGlvbl9FSiBvcGVyYXRpb24sIEdQ
UlJlZyByZXN1bHQsIEdQUlJlZyBhcmcxVGFnLCBHUFJSZWcgYXJnMVBheWxvYWQpCisgICAgSklU
Q29tcGlsZXI6OkNhbGwgY2FsbE9wZXJhdGlvbihCX0RGR09wZXJhdGlvbl9FSiBvcGVyYXRpb24s
IEdQUlJlZyByZXN1bHQsIEdQUlJlZyBhcmcxVGFnLCBHUFJSZWcgYXJnMVBheWxvYWQpCiAgICAg
ewogICAgICAgICBtX2ppdC5wdXNoKGFyZzFUYWcpOwogICAgICAgICBtX2ppdC5wdXNoKGFyZzFQ
YXlsb2FkKTsKQEAgLTEzMDEsNyArMTMyOSw3IEBAIHByb3RlY3RlZDoKIAogICAgICAgICByZXR1
cm4gYXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja1NldFJlc3VsdChvcGVyYXRpb24sIHJlc3Vs
dCk7CiAgICAgfQotICAgIEpJVENvbXBpbGVyOjpDYWxsIGNhbGxPcGVyYXRpb24oWl9ERkdPcGVy
YXRpb25fRUpKIG9wZXJhdGlvbiwgR1BSUmVnIHJlc3VsdCwgR1BSUmVnIGFyZzFUYWcsIEdQUlJl
ZyBhcmcxUGF5bG9hZCwgR1BSUmVnIGFyZzJUYWcsIEdQUlJlZyBhcmcyUGF5bG9hZCkKKyAgICBK
SVRDb21waWxlcjo6Q2FsbCBjYWxsT3BlcmF0aW9uKEJfREZHT3BlcmF0aW9uX0VKSiBvcGVyYXRp
b24sIEdQUlJlZyByZXN1bHQsIEdQUlJlZyBhcmcxVGFnLCBHUFJSZWcgYXJnMVBheWxvYWQsIEdQ
UlJlZyBhcmcyVGFnLCBHUFJSZWcgYXJnMlBheWxvYWQpCiAgICAgewogICAgICAgICBtX2ppdC5w
dXNoKGFyZzJUYWcpOwogICAgICAgICBtX2ppdC5wdXNoKGFyZzJQYXlsb2FkKTsKQEAgLTEzNTYs
NiArMTM4NCwyMCBAQCBwcm90ZWN0ZWQ6CiAKICAgICAgICAgcmV0dXJuIGFwcGVuZENhbGxXaXRo
RXhjZXB0aW9uQ2hlY2sob3BlcmF0aW9uKTsKICAgICB9CisgICAgSklUQ29tcGlsZXI6OkNhbGwg
Y2FsbE9wZXJhdGlvbihWX0RGR09wZXJhdGlvbl9FUFpKIG9wZXJhdGlvbiwgR1BSUmVnIGFyZzEs
IEdQUlJlZyBhcmcyLCBHUFJSZWcgYXJnM1RhZywgR1BSUmVnIGFyZzNQYXlsb2FkKQorICAgIHsK
KyAgICAgICAgbV9qaXQucHVzaChhcmczVGFnKTsKKyAgICAgICAgbV9qaXQucHVzaChhcmczUGF5
bG9hZCk7CisgICAgICAgIG1faml0LnB1c2goYXJnMik7CisgICAgICAgIG1faml0LnB1c2goYXJn
MSk7CisgICAgICAgIG1faml0LnB1c2goR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIpOworCisg
ICAgICAgIHJldHVybiBhcHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNoZWNrKG9wZXJhdGlvbik7Cisg
ICAgfQorICAgIEpJVENvbXBpbGVyOjpDYWxsIGNhbGxPcGVyYXRpb24oVl9ERkdPcGVyYXRpb25f
RUFaSiBvcGVyYXRpb24sIEdQUlJlZyBhcmcxLCBHUFJSZWcgYXJnMiwgR1BSUmVnIGFyZzNUYWcs
IEdQUlJlZyBhcmczUGF5bG9hZCkKKyAgICB7CisgICAgICAgIHJldHVybiBjYWxsT3BlcmF0aW9u
KChWX0RGR09wZXJhdGlvbl9FUFpKKW9wZXJhdGlvbiwgYXJnMSwgYXJnMiwgYXJnM1RhZywgYXJn
M1BheWxvYWQpOworICAgIH0KIAogICAgIEpJVENvbXBpbGVyOjpDYWxsIGNhbGxPcGVyYXRpb24o
RF9ERkdPcGVyYXRpb25fREQgb3BlcmF0aW9uLCBGUFJSZWcgcmVzdWx0LCBGUFJSZWcgYXJnMSwg
RlBSUmVnIGFyZzIpCiAgICAgewpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdP
cGVyYXRpb25zLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdP
cGVyYXRpb25zLmgJKHJldmlzaW9uIDk3MDc5KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdPcGVyYXRpb25zLmgJKHdvcmtpbmcgY29weSkKQEAgLTUwLDYgKzUwLDIwIEBAIGV4dGVy
biAiQyIgewogCiAvLyBUaGVzZSB0eXBlZGVmcyBwcm92aWRlIHR5cGVjaGVja2luZyB3aGVuIGdl
bmVyYXRpbmcgY2FsbHMgb3V0IHRvIGhlbHBlciByb3V0aW5lczsKIC8vIHRoaXMgaGVscHMgcHJl
dmVudCBjYWxsaW5nIGEgaGVscGVyIHJvdXRpbmUgd2l0aCB0aGUgd3JvbmcgYXJndW1lbnRzIQor
LyoKKyAgICBLZXk6CisgICAgVjogdm9pZAorICAgIEo6IEpTVmFsdWUKKyAgICBQOiBwb2ludGVy
ICh2b2lkKikKKyAgICBDOiBKU0NlbGwqCisgICAgQTogSlNBcnJheSoKKyAgICBTOiBzaXplX3QK
KyAgICBaOiBpbnQzMl90CisgICAgRDogZG91YmxlCisgICAgQjogQm9vbGVhbgorICAgIEk6IElk
ZW50aWZpZXIqCisgICAgRzogR2xvYmFsUmVzb2x2ZUluZm8qCisqLwogdHlwZWRlZiBKU0NlbGwq
IERGR19PUEVSQVRJT04gKCpDX0RGR09wZXJhdGlvbl9FKShFeGVjU3RhdGUqKTsKIHR5cGVkZWYg
SlNDZWxsKiBERkdfT1BFUkFUSU9OICgqQ19ERkdPcGVyYXRpb25fRUMpKEV4ZWNTdGF0ZSosIEpT
Q2VsbCopOwogdHlwZWRlZiBFbmNvZGVkSlNWYWx1ZSBERkdfT1BFUkFUSU9OICgqSl9ERkdPcGVy
YXRpb25fRUEpKEV4ZWNTdGF0ZSosIEpTQXJyYXkqKTsKQEAgLTYwLDE1ICs3NCwxOSBAQCB0eXBl
ZGVmIEVuY29kZWRKU1ZhbHVlIERGR19PUEVSQVRJT04gKCpKCiB0eXBlZGVmIEVuY29kZWRKU1Zh
bHVlIERGR19PUEVSQVRJT04gKCpKX0RGR09wZXJhdGlvbl9FSlApKEV4ZWNTdGF0ZSosIEVuY29k
ZWRKU1ZhbHVlLCB2b2lkKik7CiB0eXBlZGVmIEVuY29kZWRKU1ZhbHVlIERGR19PUEVSQVRJT04g
KCpKX0RGR09wZXJhdGlvbl9FSkkpKEV4ZWNTdGF0ZSosIEVuY29kZWRKU1ZhbHVlLCBJZGVudGlm
aWVyKik7CiB0eXBlZGVmIEVuY29kZWRKU1ZhbHVlIERGR19PUEVSQVRJT04gKCpKX0RGR09wZXJh
dGlvbl9FUCkoRXhlY1N0YXRlKiwgdm9pZCopOwordHlwZWRlZiBFbmNvZGVkSlNWYWx1ZSBERkdf
T1BFUkFUSU9OICgqSl9ERkdPcGVyYXRpb25fRVBQKShFeGVjU3RhdGUqLCB2b2lkKiwgdm9pZCop
OwordHlwZWRlZiBFbmNvZGVkSlNWYWx1ZSBERkdfT1BFUkFUSU9OICgqSl9ERkdPcGVyYXRpb25f
RUdJKShFeGVjU3RhdGUqLCBHbG9iYWxSZXNvbHZlSW5mbyosIElkZW50aWZpZXIqKTsKIHR5cGVk
ZWYgRW5jb2RlZEpTVmFsdWUgREZHX09QRVJBVElPTiAoKkpfREZHT3BlcmF0aW9uX0VQUykoRXhl
Y1N0YXRlKiwgdm9pZCosIHNpemVfdCk7CiB0eXBlZGVmIEVuY29kZWRKU1ZhbHVlIERGR19PUEVS
QVRJT04gKCpKX0RGR09wZXJhdGlvbl9FU1MpKEV4ZWNTdGF0ZSosIHNpemVfdCwgc2l6ZV90KTsK
IHR5cGVkZWYgRW5jb2RlZEpTVmFsdWUgREZHX09QRVJBVElPTiAoKkpfREZHT3BlcmF0aW9uX0VJ
KShFeGVjU3RhdGUqLCBJZGVudGlmaWVyKik7Ci10eXBlZGVmIFJlZ2lzdGVyU2l6ZWRCb29sZWFu
IERGR19PUEVSQVRJT04gKCpaX0RGR09wZXJhdGlvbl9FSikoRXhlY1N0YXRlKiwgRW5jb2RlZEpT
VmFsdWUpOwotdHlwZWRlZiBSZWdpc3RlclNpemVkQm9vbGVhbiBERkdfT1BFUkFUSU9OICgqWl9E
RkdPcGVyYXRpb25fRUpKKShFeGVjU3RhdGUqLCBFbmNvZGVkSlNWYWx1ZSwgRW5jb2RlZEpTVmFs
dWUpOwordHlwZWRlZiBSZWdpc3RlclNpemVkQm9vbGVhbiBERkdfT1BFUkFUSU9OICgqQl9ERkdP
cGVyYXRpb25fRUopKEV4ZWNTdGF0ZSosIEVuY29kZWRKU1ZhbHVlKTsKK3R5cGVkZWYgUmVnaXN0
ZXJTaXplZEJvb2xlYW4gREZHX09QRVJBVElPTiAoKkJfREZHT3BlcmF0aW9uX0VKSikoRXhlY1N0
YXRlKiwgRW5jb2RlZEpTVmFsdWUsIEVuY29kZWRKU1ZhbHVlKTsKIHR5cGVkZWYgdm9pZCBERkdf
T1BFUkFUSU9OICgqVl9ERkdPcGVyYXRpb25fRUpKSikoRXhlY1N0YXRlKiwgRW5jb2RlZEpTVmFs
dWUsIEVuY29kZWRKU1ZhbHVlLCBFbmNvZGVkSlNWYWx1ZSk7CiB0eXBlZGVmIHZvaWQgREZHX09Q
RVJBVElPTiAoKlZfREZHT3BlcmF0aW9uX0VDSkopKEV4ZWNTdGF0ZSosIEpTQ2VsbCosIEVuY29k
ZWRKU1ZhbHVlLCBFbmNvZGVkSlNWYWx1ZSk7CiB0eXBlZGVmIHZvaWQgREZHX09QRVJBVElPTiAo
KlZfREZHT3BlcmF0aW9uX0VKSlApKEV4ZWNTdGF0ZSosIEVuY29kZWRKU1ZhbHVlLCBFbmNvZGVk
SlNWYWx1ZSwgdm9pZCopOwogdHlwZWRlZiB2b2lkIERGR19PUEVSQVRJT04gKCpWX0RGR09wZXJh
dGlvbl9FSkpJKShFeGVjU3RhdGUqLCBFbmNvZGVkSlNWYWx1ZSwgRW5jb2RlZEpTVmFsdWUsIElk
ZW50aWZpZXIqKTsKK3R5cGVkZWYgdm9pZCBERkdfT1BFUkFUSU9OICgqVl9ERkdPcGVyYXRpb25f
RVBaSikoRXhlY1N0YXRlKiwgdm9pZCosIGludDMyX3QsIEVuY29kZWRKU1ZhbHVlKTsKK3R5cGVk
ZWYgdm9pZCBERkdfT1BFUkFUSU9OICgqVl9ERkdPcGVyYXRpb25fRUFaSikoRXhlY1N0YXRlKiwg
SlNBcnJheSosIGludDMyX3QsIEVuY29kZWRKU1ZhbHVlKTsKIHR5cGVkZWYgZG91YmxlICgqRF9E
RkdPcGVyYXRpb25fREQpKGRvdWJsZSwgZG91YmxlKTsgLy8gVXNpbmcgZGVmYXVsdCBjYWxsaW5n
IGNvbnZlbnRpb25zIQogdHlwZWRlZiB2b2lkKiBERkdfT1BFUkFUSU9OICgqUF9ERkdPcGVyYXRp
b25fRSkoRXhlY1N0YXRlKik7CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
U3BlY3VsYXRpdmVKSVQzMl82NC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcAkocmV2aXNpb24gOTcwNzkpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUMzJfNjQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zNzQsNyArMzc0LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGls
ZU9iamVjdEVxdWFsaQogfQogCiAvLyBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbXBhcmUgaXMgZnVz
ZWQgd2l0aCBhIHN1YnNlcXVlbnQgYnJhbmNoLgotYm9vbCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGFy
ZShOb2RlJiBub2RlLCBNYWNyb0Fzc2VtYmxlcjo6UmVsYXRpb25hbENvbmRpdGlvbiBjb25kaXRp
b24sIE1hY3JvQXNzZW1ibGVyOjpEb3VibGVDb25kaXRpb24gZG91YmxlQ29uZGl0aW9uLCBaX0RG
R09wZXJhdGlvbl9FSkogb3BlcmF0aW9uKQorYm9vbCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGFyZShO
b2RlJiBub2RlLCBNYWNyb0Fzc2VtYmxlcjo6UmVsYXRpb25hbENvbmRpdGlvbiBjb25kaXRpb24s
IE1hY3JvQXNzZW1ibGVyOjpEb3VibGVDb25kaXRpb24gZG91YmxlQ29uZGl0aW9uLCBCX0RGR09w
ZXJhdGlvbl9FSkogb3BlcmF0aW9uKQogewogICAgIGlmIChjb21waWxlUGVlcEhvbGVCcmFuY2go
bm9kZSwgY29uZGl0aW9uLCBkb3VibGVDb25kaXRpb24sIG9wZXJhdGlvbikpCiAgICAgICAgIHJl
dHVybiB0cnVlOwpAQCAtMTM4MCwxMiArMTM4MCw3IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNv
bXBpbGUoTm9kZSYgbm9kZSkKIAogICAgICAgICAvLyBDb2RlIHRvIGhhbmRsZSBwdXQgYmV5b25k
IGFycmF5IGJvdW5kcy4KICAgICAgICAgc2lsZW50U3BpbGxBbGxSZWdpc3RlcnMoc2NyYXRjaFJl
Zyk7Ci0gICAgICAgIG1faml0LnB1c2godmFsdWVUYWdSZWcpOwotICAgICAgICBtX2ppdC5wdXNo
KHZhbHVlUGF5bG9hZFJlZyk7Ci0gICAgICAgIG1faml0LnB1c2gocHJvcGVydHlSZWcpOwotICAg
ICAgICBtX2ppdC5wdXNoKGJhc2VSZWcpOwotICAgICAgICBtX2ppdC5wdXNoKEdQUkluZm86OmNh
bGxGcmFtZVJlZ2lzdGVyKTsKLSAgICAgICAgSklUQ29tcGlsZXI6OkNhbGwgZnVuY3Rpb25DYWxs
ID0gYXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVjayhvcGVyYXRpb25QdXRCeVZhbEJleW9uZEFy
cmF5Qm91bmRzKTsKKyAgICAgICAgSklUQ29tcGlsZXI6OkNhbGwgZnVuY3Rpb25DYWxsID0gY2Fs
bE9wZXJhdGlvbihvcGVyYXRpb25QdXRCeVZhbEJleW9uZEFycmF5Qm91bmRzLCBiYXNlUmVnLCBw
cm9wZXJ0eVJlZywgdmFsdWVUYWdSZWcsIHZhbHVlUGF5bG9hZFJlZyk7CiAgICAgICAgIHNpbGVu
dEZpbGxBbGxSZWdpc3RlcnMoc2NyYXRjaFJlZyk7CiAgICAgICAgIEpJVENvbXBpbGVyOjpKdW1w
IHdhc0JleW9uZEFycmF5Qm91bmRzID0gbV9qaXQuanVtcCgpOwogCkBAIC0yMzI1LDExICsyMzIw
LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBub2RlKQogCiAgICAgICAg
IHN0cnVjdHVyZXNOb3RNYXRjaC5saW5rKCZtX2ppdCk7CiAgICAgICAgIHNpbGVudFNwaWxsQWxs
UmVnaXN0ZXJzKHJlc3VsdFRhZ0dQUiwgcmVzdWx0UGF5bG9hZEdQUik7Ci0gICAgICAgIG1faml0
LnB1c2goSklUQ29tcGlsZXI6OlRydXN0ZWRJbW0zMihyZWludGVycHJldF9jYXN0PGludD4oJm1f
aml0LmNvZGVCbG9jaygpLT5pZGVudGlmaWVyKGRhdGEuaWRlbnRpZmllck51bWJlcikpKSk7Ci0g
ICAgICAgIG1faml0LnB1c2gocmVzb2x2ZUluZm9HUFIpOwotICAgICAgICBtX2ppdC5wdXNoKEdQ
UkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyKTsKLSAgICAgICAgSklUQ29tcGlsZXI6OkNhbGwgZnVu
Y3Rpb25DYWxsID0gYXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVjayhvcGVyYXRpb25SZXNvbHZl
R2xvYmFsKTsKLSAgICAgICAgc2V0dXBSZXN1bHRzKHJlc3VsdFRhZ0dQUiwgcmVzdWx0UGF5bG9h
ZEdQUik7CisgICAgICAgIEpJVENvbXBpbGVyOjpDYWxsIGZ1bmN0aW9uQ2FsbCA9IGNhbGxPcGVy
YXRpb24ob3BlcmF0aW9uUmVzb2x2ZUdsb2JhbCwgcmVzdWx0VGFnR1BSLCByZXN1bHRQYXlsb2Fk
R1BSLCByZXNvbHZlSW5mb0dQUiwgJm1faml0LmNvZGVCbG9jaygpLT5pZGVudGlmaWVyKGRhdGEu
aWRlbnRpZmllck51bWJlcikpOwogICAgICAgICBzaWxlbnRGaWxsQWxsUmVnaXN0ZXJzKHJlc3Vs
dFRhZ0dQUiwgcmVzdWx0UGF5bG9hZEdQUik7CiAKICAgICAgICAgd2FzRmFzdC5saW5rKCZtX2pp
dCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRp
dmVKSVQ2NC5jcHAJKHJldmlzaW9uIDk3MDc5KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDc0LDcgKzQ3NCw3
IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVPYmplY3RFcXVhbGkKIH0KIAogLy8gUmV0
dXJucyB0cnVlIGlmIHRoZSBjb21wYXJlIGlzIGZ1c2VkIHdpdGggYSBzdWJzZXF1ZW50IGJyYW5j
aC4KLWJvb2wgU3BlY3VsYXRpdmVKSVQ6OmNvbXBhcmUoTm9kZSYgbm9kZSwgTWFjcm9Bc3NlbWJs
ZXI6OlJlbGF0aW9uYWxDb25kaXRpb24gY29uZGl0aW9uLCBNYWNyb0Fzc2VtYmxlcjo6RG91Ymxl
Q29uZGl0aW9uIGRvdWJsZUNvbmRpdGlvbiwgWl9ERkdPcGVyYXRpb25fRUpKIG9wZXJhdGlvbikK
K2Jvb2wgU3BlY3VsYXRpdmVKSVQ6OmNvbXBhcmUoTm9kZSYgbm9kZSwgTWFjcm9Bc3NlbWJsZXI6
OlJlbGF0aW9uYWxDb25kaXRpb24gY29uZGl0aW9uLCBNYWNyb0Fzc2VtYmxlcjo6RG91YmxlQ29u
ZGl0aW9uIGRvdWJsZUNvbmRpdGlvbiwgQl9ERkdPcGVyYXRpb25fRUpKIG9wZXJhdGlvbikKIHsK
ICAgICBpZiAoY29tcGlsZVBlZXBIb2xlQnJhbmNoKG5vZGUsIGNvbmRpdGlvbiwgZG91YmxlQ29u
ZGl0aW9uLCBvcGVyYXRpb24pKQogICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTE0ODQsOSArMTQ4
NCw3IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUoTm9kZSYgbm9kZSkKIAogICAgICAg
ICAvLyBDb2RlIHRvIGhhbmRsZSBwdXQgYmV5b25kIGFycmF5IGJvdW5kcy4KICAgICAgICAgc2ls
ZW50U3BpbGxBbGxSZWdpc3RlcnMoc2NyYXRjaFJlZyk7Ci0gICAgICAgIHNldHVwU3R1YkFyZ3Vt
ZW50cyhiYXNlUmVnLCBwcm9wZXJ0eVJlZywgdmFsdWVSZWcpOwotICAgICAgICBtX2ppdC5tb3Zl
KEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyLCBHUFJJbmZvOjphcmd1bWVudEdQUjApOwotICAg
ICAgICBKSVRDb21waWxlcjo6Q2FsbCBmdW5jdGlvbkNhbGwgPSBhcHBlbmRDYWxsV2l0aEV4Y2Vw
dGlvbkNoZWNrKG9wZXJhdGlvblB1dEJ5VmFsQmV5b25kQXJyYXlCb3VuZHMpOworICAgICAgICBK
SVRDb21waWxlcjo6Q2FsbCBmdW5jdGlvbkNhbGwgPSBjYWxsT3BlcmF0aW9uKG9wZXJhdGlvblB1
dEJ5VmFsQmV5b25kQXJyYXlCb3VuZHMsIGJhc2VSZWcsIHByb3BlcnR5UmVnLCB2YWx1ZVJlZyk7
CiAgICAgICAgIHNpbGVudEZpbGxBbGxSZWdpc3RlcnMoc2NyYXRjaFJlZyk7CiAgICAgICAgIEpJ
VENvbXBpbGVyOjpKdW1wIHdhc0JleW9uZEFycmF5Qm91bmRzID0gbV9qaXQuanVtcCgpOwogCkBA
IC0yMzUwLDExICsyMzQ4LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBu
b2RlKQogICAgICAgICBKSVRDb21waWxlcjo6SnVtcCBzdHJ1Y3R1cmVzTWF0Y2ggPSBtX2ppdC5i
cmFuY2hQdHIoSklUQ29tcGlsZXI6OkVxdWFsLCByZXN1bHRHUFIsIEpJVENvbXBpbGVyOjpBZGRy
ZXNzKGdsb2JhbE9iamVjdEdQUiwgSlNDZWxsOjpzdHJ1Y3R1cmVPZmZzZXQoKSkpOwogCiAgICAg
ICAgIHNpbGVudFNwaWxsQWxsUmVnaXN0ZXJzKHJlc3VsdEdQUik7Ci0gICAgICAgIG1faml0Lm1v
dmUocmVzb2x2ZUluZm9HUFIsIEdQUkluZm86OmFyZ3VtZW50R1BSMSk7Ci0gICAgICAgIG1faml0
Lm1vdmUoSklUQ29tcGlsZXI6OlRydXN0ZWRJbW1QdHIoJm1faml0LmNvZGVCbG9jaygpLT5pZGVu
dGlmaWVyKGRhdGEuaWRlbnRpZmllck51bWJlcikpLCBHUFJJbmZvOjphcmd1bWVudEdQUjIpOwot
ICAgICAgICBtX2ppdC5tb3ZlKEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyLCBHUFJJbmZvOjph
cmd1bWVudEdQUjApOwotICAgICAgICBKSVRDb21waWxlcjo6Q2FsbCBmdW5jdGlvbkNhbGwgPSBh
cHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNoZWNrKG9wZXJhdGlvblJlc29sdmVHbG9iYWwpOwotICAg
ICAgICBtX2ppdC5tb3ZlKEdQUkluZm86OnJldHVyblZhbHVlR1BSLCByZXN1bHRHUFIpOworICAg
ICAgICBKSVRDb21waWxlcjo6Q2FsbCBmdW5jdGlvbkNhbGwgPSBjYWxsT3BlcmF0aW9uKG9wZXJh
dGlvblJlc29sdmVHbG9iYWwsIHJlc3VsdEdQUiwgcmVzb2x2ZUluZm9HUFIsICZtX2ppdC5jb2Rl
QmxvY2soKS0+aWRlbnRpZmllcihkYXRhLmlkZW50aWZpZXJOdW1iZXIpKTsKICAgICAgICAgc2ls
ZW50RmlsbEFsbFJlZ2lzdGVycyhyZXN1bHRHUFIpOwogCiAgICAgICAgIEpJVENvbXBpbGVyOjpK
dW1wIHdhc1Nsb3cgPSBtX2ppdC5qdW1wKCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAkocmV2aXNpb24gOTcwNzkpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjAxLDcgKzIwMSw3IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVQZWVwSG9s
ZUludGUKIH0KIAogLy8gUmV0dXJucyB0cnVlIGlmIHRoZSBjb21wYXJlIGlzIGZ1c2VkIHdpdGgg
YSBzdWJzZXF1ZW50IGJyYW5jaC4KLWJvb2wgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVQZWVwSG9s
ZUJyYW5jaChOb2RlJiBub2RlLCBNYWNyb0Fzc2VtYmxlcjo6UmVsYXRpb25hbENvbmRpdGlvbiBj
b25kaXRpb24sIE1hY3JvQXNzZW1ibGVyOjpEb3VibGVDb25kaXRpb24gZG91YmxlQ29uZGl0aW9u
LCBaX0RGR09wZXJhdGlvbl9FSkogb3BlcmF0aW9uKQorYm9vbCBTcGVjdWxhdGl2ZUpJVDo6Y29t
cGlsZVBlZXBIb2xlQnJhbmNoKE5vZGUmIG5vZGUsIE1hY3JvQXNzZW1ibGVyOjpSZWxhdGlvbmFs
Q29uZGl0aW9uIGNvbmRpdGlvbiwgTWFjcm9Bc3NlbWJsZXI6OkRvdWJsZUNvbmRpdGlvbiBkb3Vi
bGVDb25kaXRpb24sIEJfREZHT3BlcmF0aW9uX0VKSiBvcGVyYXRpb24pCiB7CiAgICAgLy8gRnVz
ZWQgY29tcGFyZSAmIGJyYW5jaC4KICAgICBOb2RlSW5kZXggYnJhbmNoTm9kZUluZGV4ID0gZGV0
ZWN0UGVlcEhvbGVCcmFuY2goKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
U3BlY3VsYXRpdmVKSVQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1NwZWN1bGF0aXZlSklULmgJKHJldmlzaW9uIDk3MDc5KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5oCSh3b3JraW5nIGNvcHkpCkBAIC00NDQsOCAr
NDQ0LDggQEAgcHJpdmF0ZToKICAgICAgICAgfQogICAgIH0KICAgICAKLSAgICBib29sIGNvbXBh
cmUoTm9kZSYsIE1hY3JvQXNzZW1ibGVyOjpSZWxhdGlvbmFsQ29uZGl0aW9uLCBNYWNyb0Fzc2Vt
Ymxlcjo6RG91YmxlQ29uZGl0aW9uLCBaX0RGR09wZXJhdGlvbl9FSkopOwotICAgIGJvb2wgY29t
cGlsZVBlZXBIb2xlQnJhbmNoKE5vZGUmLCBNYWNyb0Fzc2VtYmxlcjo6UmVsYXRpb25hbENvbmRp
dGlvbiwgTWFjcm9Bc3NlbWJsZXI6OkRvdWJsZUNvbmRpdGlvbiwgWl9ERkdPcGVyYXRpb25fRUpK
KTsKKyAgICBib29sIGNvbXBhcmUoTm9kZSYsIE1hY3JvQXNzZW1ibGVyOjpSZWxhdGlvbmFsQ29u
ZGl0aW9uLCBNYWNyb0Fzc2VtYmxlcjo6RG91YmxlQ29uZGl0aW9uLCBCX0RGR09wZXJhdGlvbl9F
SkopOworICAgIGJvb2wgY29tcGlsZVBlZXBIb2xlQnJhbmNoKE5vZGUmLCBNYWNyb0Fzc2VtYmxl
cjo6UmVsYXRpb25hbENvbmRpdGlvbiwgTWFjcm9Bc3NlbWJsZXI6OkRvdWJsZUNvbmRpdGlvbiwg
Ql9ERkdPcGVyYXRpb25fRUpKKTsKICAgICB2b2lkIGNvbXBpbGVQZWVwSG9sZUludGVnZXJCcmFu
Y2goTm9kZSYsIE5vZGVJbmRleCBicmFuY2hOb2RlSW5kZXgsIEpJVENvbXBpbGVyOjpSZWxhdGlv
bmFsQ29uZGl0aW9uKTsKICAgICB2b2lkIGNvbXBpbGVQZWVwSG9sZURvdWJsZUJyYW5jaChOb2Rl
JiwgTm9kZUluZGV4IGJyYW5jaE5vZGVJbmRleCwgSklUQ29tcGlsZXI6OkRvdWJsZUNvbmRpdGlv
bik7CiAgICAgdm9pZCBjb21waWxlUGVlcEhvbGVPYmplY3RFcXVhbGl0eShOb2RlJiwgTm9kZUlu
ZGV4IGJyYW5jaE5vZGVJbmRleCwgdm9pZCogdnB0cik7Cg==
</data>
<flag name="review"
          id="107902"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>