<?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>225412</bug_id>
          
          <creation_ts>2021-05-05 13:34:06 -0700</creation_ts>
          <short_desc>Introduce VM::hasPendingTerminationException() to make code a little more terse.</short_desc>
          <delta_ts>2021-05-05 20:38:17 -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>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1757077</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2021-05-05 13:34:06 -0700</bug_when>
    <thetext>This is purely a refactoring patch.  There is no behavior change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757079</commentid>
    <comment_count>1</comment_count>
      <attachid>427800</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2021-05-05 13:36:51 -0700</bug_when>
    <thetext>Created attachment 427800
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757089</commentid>
    <comment_count>2</comment_count>
      <attachid>427800</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2021-05-05 14:00:07 -0700</bug_when>
    <thetext>Comment on attachment 427800
proposed patch.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757235</commentid>
    <comment_count>3</comment_count>
      <attachid>427800</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2021-05-05 20:08:51 -0700</bug_when>
    <thetext>Comment on attachment 427800
proposed patch.

Thanks for the review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757242</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-05 20:37:33 -0700</bug_when>
    <thetext>Committed r277068 (237371@main): &lt;https://commits.webkit.org/237371@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427800.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757243</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-05 20:38:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/77589754&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427800</attachid>
            <date>2021-05-05 13:36:51 -0700</date>
            <delta_ts>2021-05-05 20:37:35 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-225412.patch</filename>
            <type>text/plain</type>
            <size>16988</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjc3MDM2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI5IEBA
CisyMDIxLTA1LTA1ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBJ
bnRyb2R1Y2UgVk06Omhhc1BlbmRpbmdUZXJtaW5hdGlvbkV4Y2VwdGlvbigpIHRvIG1ha2UgY29k
ZSBhIGxpdHRsZSBtb3JlIHRlcnNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjI1NDEyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgVGhpcyBpcyBwdXJlbHkgYSByZWZhY3RvcmluZyBwYXRjaC4gIFRoZXJl
IGlzIG5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIGludGVycHJldGVyL0ludGVycHJl
dGVyLmNwcDoKKyAgICAgICAgKEpTQzo6SW50ZXJwcmV0ZXI6OmV4ZWN1dGVQcm9ncmFtKToKKyAg
ICAgICAgKiBqaXQvSklUT3BlcmF0aW9ucy5jcHA6CisgICAgICAgICogcnVudGltZS9FeGNlcHRp
b25TY29wZS5oOgorICAgICAgICAoSlNDOjpFeGNlcHRpb25TY29wZTo6YXNzZXJ0Tm9FeGNlcHRp
b25FeGNlcHRUZXJtaW5hdGlvbik6CisgICAgICAgIChKU0M6OkV4Y2VwdGlvblNjb3BlOjpyZWxl
YXNlQXNzZXJ0Tm9FeGNlcHRpb25FeGNlcHRUZXJtaW5hdGlvbik6CisgICAgICAgICogcnVudGlt
ZS9KU09iamVjdC5oOgorICAgICAgICAoSlNDOjpKU09iamVjdDo6Z2V0IGNvbnN0KToKKyAgICAg
ICAgKiBydW50aW1lL0xhenlQcm9wZXJ0eUlubGluZXMuaDoKKyAgICAgICAgKEpTQzo6RWxlbWVu
dFR5cGU+OjpjYWxsRnVuYyk6CisgICAgICAgICogcnVudGltZS9WTS5jcHA6CisgICAgICAgIChK
U0M6OlZNOjp0aHJvd0V4Y2VwdGlvbik6CisgICAgICAgICogcnVudGltZS9WTS5oOgorICAgICAg
ICAoSlNDOjpWTTo6aGFzUGVuZGluZ1Rlcm1pbmF0aW9uRXhjZXB0aW9uIGNvbnN0KToKKyAgICAg
ICAgKiBydW50aW1lL1ZNVHJhcHMuY3BwOgorICAgICAgICAoSlNDOjpWTVRyYXBzOjpkZWZlclRl
cm1pbmF0aW9uU2xvdyk6CisKIDIwMjEtMDUtMDUgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUu
Y29tPgogCiAgICAgICAgIEVuYWJsZSBpbmNyZW1lbnRhbCBzd2VlcGluZyBvZiBHQ0F3YXJlSklU
U3R1YlJvdXRpbmVzLgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0lu
dGVycHJldGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJw
cmV0ZXIvSW50ZXJwcmV0ZXIuY3BwCShyZXZpc2lvbiAyNzcwMzQpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03
OTgsNyArNzk4LDcgQEAgZmFpbGVkSlNPTlA6CiAKICAgICAvLyBDb21waWxlIHNvdXJjZSB0byBi
eXRlY29kZSBpZiBuZWNlc3Nhcnk6CiAgICAgSlNPYmplY3QqIGVycm9yID0gcHJvZ3JhbS0+aW5p
dGlhbGl6ZUdsb2JhbFByb3BlcnRpZXModm0sIGdsb2JhbE9iamVjdCwgc2NvcGUpOwotICAgIEVY
Q0VQVElPTl9BU1NFUlQoIXRocm93U2NvcGUuZXhjZXB0aW9uKCkgfHwgIWVycm9yIHx8IHZtLmlz
VGVybWluYXRpb25FeGNlcHRpb24odGhyb3dTY29wZS5leGNlcHRpb24oKSkpOworICAgIEVYQ0VQ
VElPTl9BU1NFUlQoIXRocm93U2NvcGUuZXhjZXB0aW9uKCkgfHwgIWVycm9yIHx8IHZtLmhhc1Bl
bmRpbmdUZXJtaW5hdGlvbkV4Y2VwdGlvbigpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHRo
cm93U2NvcGUsIGNoZWNrZWRSZXR1cm4odGhyb3dTY29wZS5leGNlcHRpb24oKSkpOwogICAgIGlm
IChVTkxJS0VMWShlcnJvcikpCiAgICAgICAgIHJldHVybiBjaGVja2VkUmV0dXJuKHRocm93RXhj
ZXB0aW9uKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgZXJyb3IpKTsKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvSklUT3BlcmF0aW9ucy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcAkocmV2aXNpb24gMjc3MDM0KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjQwNSw3ICsyNDA1LDcgQEAgSlNDX0RFRklORV9KSVRfT1BFUkFUSU9OKG9wZXJh
dGlvbkdldFByaQogCiAgICAgaWYgKGJhc2VWYWx1ZS5pc09iamVjdCgpKSB7CiAgICAgICAgIGNv
bnN0IElkZW50aWZpZXIgZmllbGROYW1lID0gZmllbGROYW1lVmFsdWUudG9Qcm9wZXJ0eUtleShn
bG9iYWxPYmplY3QpOwotICAgICAgICBFWENFUFRJT05fQVNTRVJUKCFzY29wZS5leGNlcHRpb24o
KSB8fCB2bS5pc1Rlcm1pbmF0aW9uRXhjZXB0aW9uKHNjb3BlLmV4Y2VwdGlvbigpKSk7CisgICAg
ICAgIEVYQ0VQVElPTl9BU1NFUlQoIXNjb3BlLmV4Y2VwdGlvbigpIHx8IHZtLmhhc1BlbmRpbmdU
ZXJtaW5hdGlvbkV4Y2VwdGlvbigpKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgICAgIEFTU0VSVChmaWVsZE5hbWUuaXNTeW1ib2wo
KSk7CiAKQEAgLTM1MzQsNyArMzUzNCw3IEBAIEpTQ19ERUZJTkVfSklUX09QRVJBVElPTihvcGVy
YXRpb25SZXRyaWUKICAgICBSRUxFQVNFX0FTU0VSVCghIXNjb3BlLmV4Y2VwdGlvbigpKTsKIAog
ICAgIEV4Y2VwdGlvbiogZXhjZXB0aW9uID0gc2NvcGUuZXhjZXB0aW9uKCk7Ci0gICAgaWYgKHZt
LmlzVGVybWluYXRpb25FeGNlcHRpb24oZXhjZXB0aW9uKSkgeworICAgIGlmIChVTkxJS0VMWSh2
bS5pc1Rlcm1pbmF0aW9uRXhjZXB0aW9uKGV4Y2VwdGlvbikpKSB7CiAgICAgICAgIGdlbmVyaWNV
bndpbmQodm0sIGNhbGxGcmFtZSk7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvblNjb3BlLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uU2NvcGUuaAko
cmV2aXNpb24gMjc3MDM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0
aW9uU2NvcGUuaAkod29ya2luZyBjb3B5KQpAQCAtNTQsOCArNTQsOCBAQCBwdWJsaWM6CiAKICAg
ICBBTFdBWVNfSU5MSU5FIHZvaWQgYXNzZXJ0Tm9FeGNlcHRpb24oKSB7IFJFTEVBU0VfQVNTRVJU
X1dJVEhfTUVTU0FHRSghZXhjZXB0aW9uKCksICIlcyIsIHVuZXhwZWN0ZWRFeGNlcHRpb25NZXNz
YWdlKCkuZGF0YSgpKTsgfQogICAgIEFMV0FZU19JTkxJTkUgdm9pZCByZWxlYXNlQXNzZXJ0Tm9F
eGNlcHRpb24oKSB7IFJFTEVBU0VfQVNTRVJUX1dJVEhfTUVTU0FHRSghZXhjZXB0aW9uKCksICIl
cyIsIHVuZXhwZWN0ZWRFeGNlcHRpb25NZXNzYWdlKCkuZGF0YSgpKTsgfQotICAgIEFMV0FZU19J
TkxJTkUgdm9pZCBhc3NlcnROb0V4Y2VwdGlvbkV4Y2VwdFRlcm1pbmF0aW9uKCkgeyBSRUxFQVNF
X0FTU0VSVF9XSVRIX01FU1NBR0UoIWV4Y2VwdGlvbigpIHx8IG1fdm0uaXNUZXJtaW5hdGlvbkV4
Y2VwdGlvbihleGNlcHRpb24oKSksICIlcyIsIHVuZXhwZWN0ZWRFeGNlcHRpb25NZXNzYWdlKCku
ZGF0YSgpKTsgfQotICAgIEFMV0FZU19JTkxJTkUgdm9pZCByZWxlYXNlQXNzZXJ0Tm9FeGNlcHRp
b25FeGNlcHRUZXJtaW5hdGlvbigpIHsgUkVMRUFTRV9BU1NFUlRfV0lUSF9NRVNTQUdFKCFleGNl
cHRpb24oKSB8fCBtX3ZtLmlzVGVybWluYXRpb25FeGNlcHRpb24oZXhjZXB0aW9uKCkpLCAiJXMi
LCB1bmV4cGVjdGVkRXhjZXB0aW9uTWVzc2FnZSgpLmRhdGEoKSk7IH0KKyAgICBBTFdBWVNfSU5M
SU5FIHZvaWQgYXNzZXJ0Tm9FeGNlcHRpb25FeGNlcHRUZXJtaW5hdGlvbigpIHsgUkVMRUFTRV9B
U1NFUlRfV0lUSF9NRVNTQUdFKCFleGNlcHRpb24oKSB8fCBtX3ZtLmhhc1BlbmRpbmdUZXJtaW5h
dGlvbkV4Y2VwdGlvbigpLCAiJXMiLCB1bmV4cGVjdGVkRXhjZXB0aW9uTWVzc2FnZSgpLmRhdGEo
KSk7IH0KKyAgICBBTFdBWVNfSU5MSU5FIHZvaWQgcmVsZWFzZUFzc2VydE5vRXhjZXB0aW9uRXhj
ZXB0VGVybWluYXRpb24oKSB7IFJFTEVBU0VfQVNTRVJUX1dJVEhfTUVTU0FHRSghZXhjZXB0aW9u
KCkgfHwgbV92bS5oYXNQZW5kaW5nVGVybWluYXRpb25FeGNlcHRpb24oKSwgIiVzIiwgdW5leHBl
Y3RlZEV4Y2VwdGlvbk1lc3NhZ2UoKS5kYXRhKCkpOyB9CiAKICNpZiBBU0FOX0VOQUJMRUQgfHwg
RU5BQkxFKENfTE9PUCkKICAgICBjb25zdCB2b2lkKiBzdGFja1Bvc2l0aW9uKCkgY29uc3QgeyAg
cmV0dXJuIG1fbG9jYXRpb24uc3RhY2tQb3NpdGlvbjsgfQpAQCAtOTAsOCArOTAsOCBAQCBwdWJs
aWM6CiAKICAgICBBTFdBWVNfSU5MSU5FIHZvaWQgYXNzZXJ0Tm9FeGNlcHRpb24oKSB7IEFTU0VS
VCghZXhjZXB0aW9uKCkpOyB9CiAgICAgQUxXQVlTX0lOTElORSB2b2lkIHJlbGVhc2VBc3NlcnRO
b0V4Y2VwdGlvbigpIHsgUkVMRUFTRV9BU1NFUlQoIWV4Y2VwdGlvbigpKTsgfQotICAgIEFMV0FZ
U19JTkxJTkUgdm9pZCBhc3NlcnROb0V4Y2VwdGlvbkV4Y2VwdFRlcm1pbmF0aW9uKCkgeyBBU1NF
UlQoIWV4Y2VwdGlvbigpIHx8IG1fdm0uaXNUZXJtaW5hdGlvbkV4Y2VwdGlvbihleGNlcHRpb24o
KSkpOyB9Ci0gICAgQUxXQVlTX0lOTElORSB2b2lkIHJlbGVhc2VBc3NlcnROb0V4Y2VwdGlvbkV4
Y2VwdFRlcm1pbmF0aW9uKCkgeyBSRUxFQVNFX0FTU0VSVCghZXhjZXB0aW9uKCkgfHwgbV92bS5p
c1Rlcm1pbmF0aW9uRXhjZXB0aW9uKGV4Y2VwdGlvbigpKSk7IH0KKyAgICBBTFdBWVNfSU5MSU5F
IHZvaWQgYXNzZXJ0Tm9FeGNlcHRpb25FeGNlcHRUZXJtaW5hdGlvbigpIHsgQVNTRVJUKCFleGNl
cHRpb24oKSB8fCBtX3ZtLmhhc1BlbmRpbmdUZXJtaW5hdGlvbkV4Y2VwdGlvbigpKTsgfQorICAg
IEFMV0FZU19JTkxJTkUgdm9pZCByZWxlYXNlQXNzZXJ0Tm9FeGNlcHRpb25FeGNlcHRUZXJtaW5h
dGlvbigpIHsgUkVMRUFTRV9BU1NFUlQoIWV4Y2VwdGlvbigpIHx8IG1fdm0uaGFzUGVuZGluZ1Rl
cm1pbmF0aW9uRXhjZXB0aW9uKCkpOyB9CiAKIHByb3RlY3RlZDoKICAgICBBTFdBWVNfSU5MSU5F
IEV4Y2VwdGlvblNjb3BlKFZNJiB2bSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTT2JqZWN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNPYmplY3QuaAkocmV2aXNpb24gMjc3MDM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNPYmplY3QuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5NSw3ICsxNDk1LDcgQEAg
aW5saW5lIEpTVmFsdWUgSlNPYmplY3Q6OmdldChKU0dsb2JhbE9iagogICAgIFByb3BlcnR5U2xv
dCBzbG90KHRoaXMsIFByb3BlcnR5U2xvdDo6SW50ZXJuYWxNZXRob2RUeXBlOjpHZXQpOwogICAg
IGJvb2wgaGFzUHJvcGVydHkgPSBjb25zdF9jYXN0PEpTT2JqZWN0Kj4odGhpcyktPmdldFByb3Bl
cnR5U2xvdChnbG9iYWxPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCk7CiAKLSAgICBFWENFUFRJ
T05fQVNTRVJUKCFzY29wZS5leGNlcHRpb24oKSB8fCB2bS5pc1Rlcm1pbmF0aW9uRXhjZXB0aW9u
KHNjb3BlLmV4Y2VwdGlvbigpKSB8fCAhaGFzUHJvcGVydHkpOworICAgIEVYQ0VQVElPTl9BU1NF
UlQoIXNjb3BlLmV4Y2VwdGlvbigpIHx8IHZtLmhhc1BlbmRpbmdUZXJtaW5hdGlvbkV4Y2VwdGlv
bigpIHx8ICFoYXNQcm9wZXJ0eSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwganNV
bmRlZmluZWQoKSk7CiAKICAgICBpZiAoaGFzUHJvcGVydHkpCkBAIC0xNTExLDcgKzE1MTEsNyBA
QCBpbmxpbmUgSlNWYWx1ZSBKU09iamVjdDo6Z2V0KEpTR2xvYmFsT2JqCiAgICAgUHJvcGVydHlT
bG90IHNsb3QodGhpcywgUHJvcGVydHlTbG90OjpJbnRlcm5hbE1ldGhvZFR5cGU6OkdldCk7CiAg
ICAgYm9vbCBoYXNQcm9wZXJ0eSA9IGNvbnN0X2Nhc3Q8SlNPYmplY3QqPih0aGlzKS0+Z2V0UHJv
cGVydHlTbG90KGdsb2JhbE9iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90KTsKIAotICAgIEVYQ0VQ
VElPTl9BU1NFUlQoIXNjb3BlLmV4Y2VwdGlvbigpIHx8IHZtLmlzVGVybWluYXRpb25FeGNlcHRp
b24oc2NvcGUuZXhjZXB0aW9uKCkpIHx8ICFoYXNQcm9wZXJ0eSk7CisgICAgRVhDRVBUSU9OX0FT
U0VSVCghc2NvcGUuZXhjZXB0aW9uKCkgfHwgdm0uaGFzUGVuZGluZ1Rlcm1pbmF0aW9uRXhjZXB0
aW9uKCkgfHwgIWhhc1Byb3BlcnR5KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBq
c1VuZGVmaW5lZCgpKTsKIAogICAgIGlmIChoYXNQcm9wZXJ0eSkKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0xhenlQcm9wZXJ0eUlubGluZXMuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9MYXp5UHJvcGVydHlJbmxpbmVzLmgJKHJldmlz
aW9uIDI3NzAzNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xhenlQcm9wZXJ0
eUlubGluZXMuaAkod29ya2luZyBjb3B5KQpAQCAtOTksOCArOTksNyBAQCBFbGVtZW50VHlwZSog
TGF6eVByb3BlcnR5PE93bmVyVHlwZSwgRWxlCiAgICAgY2FsbFN0YXRlbGVzc0xhbWJkYTx2b2lk
LCBGdW5jPihpbml0aWFsaXplcik7CiAgICAgaWYgKFVOTElLRUxZKGluaXRpYWxpemVyLnByb3Bl
cnR5Lm1fcG9pbnRlciAmIGluaXRpYWxpemluZ1RhZykpIHsKICAgICAgICAgVk0mIHZtID0gaW5p
dGlhbGl6ZXIudm07Ci0gICAgICAgIEV4Y2VwdGlvbiogZXhjZXB0aW9uID0gdm0uZXhjZXB0aW9u
Rm9ySW5zcGVjdGlvbigpOwotICAgICAgICBSRUxFQVNFX0FTU0VSVChleGNlcHRpb24gJiYgdm0u
aXNUZXJtaW5hdGlvbkV4Y2VwdGlvbihleGNlcHRpb24pKTsKKyAgICAgICAgUkVMRUFTRV9BU1NF
UlQodm0uaGFzUGVuZGluZ1Rlcm1pbmF0aW9uRXhjZXB0aW9uKCkpOwogICAgICAgICBSRUxFQVNF
X0FTU0VSVChpbml0aWFsaXplci5wcm9wZXJ0eS5tX3BvaW50ZXIgJiBsYXp5VGFnKTsKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVk0uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1ZNLmNwcAkocmV2aXNpb24gMjc3MDM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvVk0uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05OTIsNyArOTkyLDcgQEAgdm9pZCBWTTo6dGhy
b3dUZXJtaW5hdGlvbkV4Y2VwdGlvbigpCiBFeGNlcHRpb24qIFZNOjp0aHJvd0V4Y2VwdGlvbihK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBFeGNlcHRpb24qIGV4Y2VwdGlvblRvVGhyb3cp
CiB7CiAgICAgLy8gVGhlIFRlcm1pbmF0aW9uRXhjZXB0aW9uIHNob3VsZCBuZXZlciBiZSBvdmVy
cmlkZGVuLgotICAgIGlmIChtX2V4Y2VwdGlvbiAmJiBpc1Rlcm1pbmF0aW9uRXhjZXB0aW9uKG1f
ZXhjZXB0aW9uKSkKKyAgICBpZiAoaGFzUGVuZGluZ1Rlcm1pbmF0aW9uRXhjZXB0aW9uKCkpCiAg
ICAgICAgIHJldHVybiBtX2V4Y2VwdGlvbjsKIAogICAgIC8vIFRoZSBUZXJtaW5hdGlvbkV4Y2Vw
dGlvbiBpcyBub3QgbGlrZSBvcmRpbmFyeSBleGNlcHRpb25zIHRoYXQgc2hvdWxkIGJlCkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmgJKHJldmlzaW9uIDI3NzAzNCkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmgJKHdvcmtpbmcgY29weSkKQEAgLTM1Miw2ICsz
NTIsMTAgQEAgcHVibGljOgogICAgICAgICBBU1NFUlQoZXhjZXB0aW9uKTsKICAgICAgICAgcmV0
dXJuIGV4Y2VwdGlvbiA9PSBtX3Rlcm1pbmF0aW9uRXhjZXB0aW9uOwogICAgIH0KKyAgICBib29s
IGhhc1BlbmRpbmdUZXJtaW5hdGlvbkV4Y2VwdGlvbigpIGNvbnN0CisgICAgeworICAgICAgICBy
ZXR1cm4gbV9leGNlcHRpb24gJiYgaXNUZXJtaW5hdGlvbkV4Y2VwdGlvbihtX2V4Y2VwdGlvbik7
CisgICAgfQogCiAgICAgdm9pZCB0aHJvd1Rlcm1pbmF0aW9uRXhjZXB0aW9uKCk7CiAKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNVHJhcHMuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNVHJhcHMuY3BwCShyZXZpc2lvbiAyNzcw
MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTVRyYXBzLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNDE2LDkgKzQxNiw3IEBAIHZvaWQgVk1UcmFwczo6ZGVmZXJUZXJtaW5hdGlv
blNsb3coRGVmZXIKICAgICBBU1NFUlQobV9kZWZlclRlcm1pbmF0aW9uQ291bnQgPT0gMSk7CiAK
ICAgICBWTSYgdm0gPSB0aGlzLT52bSgpOwotICAgIEV4Y2VwdGlvbiogcGVuZGluZ0V4Y2VwdGlv
biA9IHZtLmV4Y2VwdGlvbigpOwotICAgIEFTU0VSVChwZW5kaW5nRXhjZXB0aW9uKTsKLSAgICBp
ZiAodm0uaXNUZXJtaW5hdGlvbkV4Y2VwdGlvbihwZW5kaW5nRXhjZXB0aW9uKSkgeworICAgIGlm
ICh2bS5oYXNQZW5kaW5nVGVybWluYXRpb25FeGNlcHRpb24oKSkgewogICAgICAgICBBU1NFUlQo
dm0udGVybWluYXRpb25JblByb2dyZXNzKCkpOwogICAgICAgICB2bS5jbGVhckV4Y2VwdGlvbigp
OwogICAgICAgICBtX3N1c3BlbmRlZFRlcm1pbmF0aW9uRXhjZXB0aW9uID0gdHJ1ZTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NzAzNCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDIxLTA1LTA1ICBNYXJrIExhbSAgPG1h
cmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBJbnRyb2R1Y2UgVk06Omhhc1BlbmRpbmdUZXJt
aW5hdGlvbkV4Y2VwdGlvbigpIHRvIG1ha2UgY29kZSBhIGxpdHRsZSBtb3JlIHRlcnNlLgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NDEyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBiaW5kaW5ncy9q
cy9KU0RPTUdsb2JhbE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpoYW5kbGVSZXNwb25z
ZU9uU3RyZWFtaW5nQWN0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTVByb21pc2Uu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NUHJvbWlzZTo6d2hlblByb21pc2VJc1NldHRsZWQp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NUHJvbWlzZURlZmVycmVkLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkRlZmVycmVkUHJvbWlzZTo6cmVqZWN0KToKKyAgICAgICAgKiBiaW5kaW5n
cy9qcy9SZWFkYWJsZVN0cmVhbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjppbnZva2VSZWFkYWJs
ZVN0cmVhbUZ1bmN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWRhYmxlU3RyZWFtOjpsb2Nr
KToKKyAgICAgICAgKFdlYkNvcmU6OmNoZWNrUmVhZGFibGVTdHJlYW0pOgorICAgICAgICAqIGJp
bmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6aW52b2tlUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlckZ1bmN0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXI6OmVycm9y
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXI6OmVu
cXVldWUpOgorCiAyMDIxLTA1LTA1ICBBbGljaWEgQm95YSBHYXJjw61hICA8YWJveWFAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbTVNFXVtHU3RyZWFtZXJdIFdlYktpdE1lZGlhU3JjIHJld29yayB2
MgpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2Jq
ZWN0LmNwcAkocmV2aXNpb24gMjc3MDM0KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01HbG9iYWxPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDUsNyArMTQ1LDcgQEAg
SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKG1ha2VET01FeGNlcHRpbwogICAgICAgICBjb2RlID0g
QWJvcnRFcnJvcjsKICAgICBhdXRvIHZhbHVlID0gY3JlYXRlRE9NRXhjZXB0aW9uKGdsb2JhbE9i
amVjdCwgY29kZSwgbWVzc2FnZSk7CiAKLSAgICBFWENFUFRJT05fQVNTRVJUKCFzY29wZS5leGNl
cHRpb24oKSB8fCB2bS5pc1Rlcm1pbmF0aW9uRXhjZXB0aW9uKHNjb3BlLmV4Y2VwdGlvbigpKSk7
CisgICAgRVhDRVBUSU9OX0FTU0VSVCghc2NvcGUuZXhjZXB0aW9uKCkgfHwgdm0uaGFzUGVuZGlu
Z1Rlcm1pbmF0aW9uRXhjZXB0aW9uKCkpOwogCiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh2
YWx1ZSk7CiB9CkBAIC00MTQsNyArNDE0LDcgQEAgc3RhdGljIEpTQzo6SlNQcm9taXNlKiBoYW5k
bGVSZXNwb25zZU9uUwogICAgICAgICAgICAgICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9X
X1NDT1BFKHZtKTsKICAgICAgICAgICAgICAgICBhdXRvIGVycm9yID0gY3JlYXRlRE9NRXhjZXB0
aW9uKCpnbG9iYWxPYmplY3QsIFdURk1vdmUoZXhjZXB0aW9uKSk7CiAgICAgICAgICAgICAgICAg
aWYgKFVOTElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkgewotICAgICAgICAgICAgICAgICAgICBB
U1NFUlQodm0uaXNUZXJtaW5hdGlvbkV4Y2VwdGlvbihzY29wZS5leGNlcHRpb24oKSkpOworICAg
ICAgICAgICAgICAgICAgICBBU1NFUlQodm0uaGFzUGVuZGluZ1Rlcm1pbmF0aW9uRXhjZXB0aW9u
KCkpOwogICAgICAgICAgICAgICAgICAgICBjb21waWxlci0+Y2FuY2VsKCk7CiAgICAgICAgICAg
ICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICB9CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTVByb21pc2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NUHJvbWlzZS5jcHAJKHJldmlzaW9uIDI3NzAzNCkKKysrIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NUHJvbWlzZS5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTU3LDcgKzU3LDcgQEAgYXV0byBET01Qcm9taXNlOjp3aGVuUHJvbWlzZUlzU2V0dGxlZChK
UwogICAgIGNvbnN0IEpTQzo6SWRlbnRpZmllciYgcHJpdmF0ZU5hbWUgPSB2bS5wcm9wZXJ0eU5h
bWVzLT5idWlsdGluTmFtZXMoKS50aGVuUHJpdmF0ZU5hbWUoKTsKICAgICBhdXRvIHRoZW5GdW5j
dGlvbiA9IHByb21pc2UtPmdldCgmbGV4aWNhbEdsb2JhbE9iamVjdCwgcHJpdmF0ZU5hbWUpOwog
Ci0gICAgRVhDRVBUSU9OX0FTU0VSVCghc2NvcGUuZXhjZXB0aW9uKCkgfHwgdm0uaXNUZXJtaW5h
dGlvbkV4Y2VwdGlvbihzY29wZS5leGNlcHRpb24oKSkpOworICAgIEVYQ0VQVElPTl9BU1NFUlQo
IXNjb3BlLmV4Y2VwdGlvbigpIHx8IHZtLmhhc1BlbmRpbmdUZXJtaW5hdGlvbkV4Y2VwdGlvbigp
KTsKICAgICBpZiAoc2NvcGUuZXhjZXB0aW9uKCkpCiAgICAgICAgIHJldHVybiBJc0NhbGxiYWNr
UmVnaXN0ZXJlZDo6Tm87CiAKQEAgLTcxLDcgKzcxLDcgQEAgYXV0byBET01Qcm9taXNlOjp3aGVu
UHJvbWlzZUlzU2V0dGxlZChKUwogICAgIEFTU0VSVChjYWxsRGF0YS50eXBlICE9IEpTQzo6Q2Fs
bERhdGE6OlR5cGU6Ok5vbmUpOwogICAgIGNhbGwoJmxleGljYWxHbG9iYWxPYmplY3QsIHRoZW5G
dW5jdGlvbiwgY2FsbERhdGEsIHByb21pc2UsIGFyZ3VtZW50cyk7CiAKLSAgICBFWENFUFRJT05f
QVNTRVJUKCFzY29wZS5leGNlcHRpb24oKSB8fCB2bS5pc1Rlcm1pbmF0aW9uRXhjZXB0aW9uKHNj
b3BlLmV4Y2VwdGlvbigpKSk7CisgICAgRVhDRVBUSU9OX0FTU0VSVCghc2NvcGUuZXhjZXB0aW9u
KCkgfHwgdm0uaGFzUGVuZGluZ1Rlcm1pbmF0aW9uRXhjZXB0aW9uKCkpOwogICAgIHJldHVybiBz
Y29wZS5leGNlcHRpb24oKSA/IElzQ2FsbGJhY2tSZWdpc3RlcmVkOjpObyA6IElzQ2FsbGJhY2tS
ZWdpc3RlcmVkOjpZZXM7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NUHJvbWlzZURlZmVycmVkLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTVByb21pc2VEZWZlcnJlZC5jcHAJKHJldmlzaW9uIDI3NzAzNCkKKysrIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NUHJvbWlzZURlZmVycmVkLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTQ3LDcgKzE0Nyw3IEBAIHZvaWQgRGVmZXJyZWRQcm9taXNlOjpyZWplY3Qo
RXhjZXB0aW9uIGUKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAg
ICAgYXV0byBlcnJvciA9IGNyZWF0ZURPTUV4Y2VwdGlvbihsZXhpY2FsR2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGV4Y2VwdGlvbikpOwogICAgIGlmIChVTkxJS0VMWShzY29wZS5leGNlcHRpb24oKSkp
IHsKLSAgICAgICAgQVNTRVJUKHZtLmlzVGVybWluYXRpb25FeGNlcHRpb24oc2NvcGUuZXhjZXB0
aW9uKCkpKTsKKyAgICAgICAgQVNTRVJUKHZtLmhhc1BlbmRpbmdUZXJtaW5hdGlvbkV4Y2VwdGlv
bigpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMTgxLDcgKzE4MSw3IEBAIHZvaWQg
RGVmZXJyZWRQcm9taXNlOjpyZWplY3QoRXhjZXB0aW9uQ28KICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgYXV0byBlcnJvciA9IGNyZWF0ZURPTUV4Y2VwdGlv
bigmbGV4aWNhbEdsb2JhbE9iamVjdCwgZWMsIG1lc3NhZ2UpOwogICAgIGlmIChVTkxJS0VMWShz
Y29wZS5leGNlcHRpb24oKSkpIHsKLSAgICAgICAgQVNTRVJUKHZtLmlzVGVybWluYXRpb25FeGNl
cHRpb24oc2NvcGUuZXhjZXB0aW9uKCkpKTsKKyAgICAgICAgQVNTRVJUKHZtLmhhc1BlbmRpbmdU
ZXJtaW5hdGlvbkV4Y2VwdGlvbigpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApJbmRleDog
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW0uY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtLmNwcAkocmV2aXNp
b24gMjc3MDM0KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVTdHJlYW0u
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Miw3ICs3Miw3IEBAIHN0YXRpYyBpbmxpbmUgT3B0aW9u
YWw8SlNDOjpKU1ZhbHVlPiBpbnYKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9DQVRDSF9TQ09Q
RSh2bSk7CiAgICAgYXV0byBjYWxsRGF0YSA9IEpTQzo6Z2V0Q2FsbERhdGEodm0sIGZ1bmN0aW9u
KTsKICAgICBhdXRvIHJlc3VsdCA9IGNhbGwoJmxleGljYWxHbG9iYWxPYmplY3QsIGZ1bmN0aW9u
LCBjYWxsRGF0YSwgdGhpc1ZhbHVlLCBhcmd1bWVudHMpOwotICAgIEVYQ0VQVElPTl9BU1NFUlQo
IXNjb3BlLmV4Y2VwdGlvbigpIHx8IHZtLmlzVGVybWluYXRpb25FeGNlcHRpb24oc2NvcGUuZXhj
ZXB0aW9uKCkpKTsKKyAgICBFWENFUFRJT05fQVNTRVJUKCFzY29wZS5leGNlcHRpb24oKSB8fCB2
bS5oYXNQZW5kaW5nVGVybWluYXRpb25FeGNlcHRpb24oKSk7CiAgICAgaWYgKHNjb3BlLmV4Y2Vw
dGlvbigpKQogICAgICAgICByZXR1cm4geyB9OwogICAgIHJldHVybiByZXN1bHQ7CkBAIC0xMzEs
NyArMTMxLDcgQEAgdm9pZCBSZWFkYWJsZVN0cmVhbTo6bG9jaygpCiAgICAgQVNTRVJUKCFhcmdz
Lmhhc092ZXJmbG93ZWQoKSk7CiAKICAgICBKU0M6OmNvbnN0cnVjdCgmbGV4aWNhbEdsb2JhbE9i
amVjdCwgY29uc3RydWN0b3IsIGNvbnN0cnVjdERhdGEsIGFyZ3MpOwotICAgIEVYQ0VQVElPTl9B
U1NFUlQoIXNjb3BlLmV4Y2VwdGlvbigpIHx8IHZtLmlzVGVybWluYXRpb25FeGNlcHRpb24oc2Nv
cGUuZXhjZXB0aW9uKCkpKTsKKyAgICBFWENFUFRJT05fQVNTRVJUKCFzY29wZS5leGNlcHRpb24o
KSB8fCB2bS5oYXNQZW5kaW5nVGVybWluYXRpb25FeGNlcHRpb24oKSk7CiB9CiAKIHN0YXRpYyBp
bmxpbmUgYm9vbCBjaGVja1JlYWRhYmxlU3RyZWFtKEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QsIEpTUmVhZGFibGVTdHJlYW0qIHJlYWRhYmxlU3RyZWFtLCBKU0M6OkpTVmFsdWUgZnVu
Y3Rpb24pCkBAIC0xNDksNyArMTQ5LDcgQEAgc3RhdGljIGlubGluZSBib29sIGNoZWNrUmVhZGFi
bGVTdHJlYW0oSgogICAgIEFTU0VSVChjYWxsRGF0YS50eXBlICE9IEpTQzo6Q2FsbERhdGE6OlR5
cGU6Ok5vbmUpOwogCiAgICAgYXV0byByZXN1bHQgPSBjYWxsKCZsZXhpY2FsR2xvYmFsT2JqZWN0
LCBmdW5jdGlvbiwgY2FsbERhdGEsIEpTQzo6anNVbmRlZmluZWQoKSwgYXJndW1lbnRzKTsKLSAg
ICBFWENFUFRJT05fQVNTRVJUKCFzY29wZS5leGNlcHRpb24oKSB8fCB2bS5pc1Rlcm1pbmF0aW9u
RXhjZXB0aW9uKHNjb3BlLmV4Y2VwdGlvbigpKSk7CisgICAgRVhDRVBUSU9OX0FTU0VSVCghc2Nv
cGUuZXhjZXB0aW9uKCkgfHwgdm0uaGFzUGVuZGluZ1Rlcm1pbmF0aW9uRXhjZXB0aW9uKCkpOwog
CiAgICAgcmV0dXJuIHJlc3VsdC5pc1RydWUoKSB8fCBzY29wZS5leGNlcHRpb24oKTsKIH0KSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRy
b2xsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRh
YmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiAyNzcwMzQpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNTAsNyArNTAsNyBAQCBzdGF0aWMgYm9vbCBpbnZva2VSZWFk
YWJsZVN0cmVhbURlZmF1bHRDCiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfQ0FUQ0hfU0NPUEUo
dm0pOwogICAgIGF1dG8gY2FsbERhdGEgPSBKU0M6OmdldENhbGxEYXRhKHZtLCBmdW5jdGlvbik7
CiAgICAgY2FsbCgmbGV4aWNhbEdsb2JhbE9iamVjdCwgZnVuY3Rpb24sIGNhbGxEYXRhLCBKU0M6
OmpzVW5kZWZpbmVkKCksIGFyZ3VtZW50cyk7Ci0gICAgRVhDRVBUSU9OX0FTU0VSVCghc2NvcGUu
ZXhjZXB0aW9uKCkgfHwgdm0uaXNUZXJtaW5hdGlvbkV4Y2VwdGlvbihzY29wZS5leGNlcHRpb24o
KSkpOworICAgIEVYQ0VQVElPTl9BU1NFUlQoIXNjb3BlLmV4Y2VwdGlvbigpIHx8IHZtLmhhc1Bl
bmRpbmdUZXJtaW5hdGlvbkV4Y2VwdGlvbigpKTsKICAgICByZXR1cm4gIXNjb3BlLmV4Y2VwdGlv
bigpOwogfQogCkBAIC03NSw3ICs3NSw3IEBAIHZvaWQgUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29u
dHJvbGxlcjo6ZXIKICAgICBhdXRvIHZhbHVlID0gY3JlYXRlRE9NRXhjZXB0aW9uKCZsZXhpY2Fs
R2xvYmFsT2JqZWN0LCBleGNlcHRpb24uY29kZSgpLCBleGNlcHRpb24ubWVzc2FnZSgpKTsKIAog
ICAgIGlmIChVTkxJS0VMWShzY29wZS5leGNlcHRpb24oKSkpIHsKLSAgICAgICAgQVNTRVJUKHZt
LmlzVGVybWluYXRpb25FeGNlcHRpb24oc2NvcGUuZXhjZXB0aW9uKCkpKTsKKyAgICAgICAgQVNT
RVJUKHZtLmhhc1BlbmRpbmdUZXJtaW5hdGlvbkV4Y2VwdGlvbigpKTsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KIApAQCAtMTIxLDcgKzEyMSw3IEBAIGJvb2wgUmVhZGFibGVTdHJlYW1EZWZhdWx0
Q29udHJvbGxlcjo6ZW4KICAgICBhdXRvIHZhbHVlID0gdG9KUygmbGV4aWNhbEdsb2JhbE9iamVj
dCwgJmxleGljYWxHbG9iYWxPYmplY3QsIGNodW5rLmdldCgpKTsKIAogICAgIGlmIChVTkxJS0VM
WShzY29wZS5leGNlcHRpb24oKSkpIHsKLSAgICAgICAgQVNTRVJUKHZtLmlzVGVybWluYXRpb25F
eGNlcHRpb24oc2NvcGUuZXhjZXB0aW9uKCkpKTsKKyAgICAgICAgQVNTRVJUKHZtLmhhc1BlbmRp
bmdUZXJtaW5hdGlvbkV4Y2VwdGlvbigpKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0K
IAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>