<?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>72366</bug_id>
          
          <creation_ts>2011-11-15 01:31:08 -0800</creation_ts>
          <short_desc>Remove DFGJITCompilerInlineMethods</short_desc>
          <delta_ts>2011-11-15 03:01:58 -0800</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>0</everconfirmed>
          <reporter name="Yuqiang Xian">yuqiang.xian</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>barraclough</cc>
    
    <cc>fpizlo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>502728</commentid>
    <comment_count>0</comment_count>
    <who name="Yuqiang Xian">yuqiang.xian</who>
    <bug_when>2011-11-15 01:31:08 -0800</bug_when>
    <thetext>Those methods are actually seldom used. Modify the few such places and remove DFGJITCompilerInlineMethods stuffs totally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502730</commentid>
    <comment_count>1</comment_count>
      <attachid>115122</attachid>
    <who name="Yuqiang Xian">yuqiang.xian</who>
    <bug_when>2011-11-15 01:35:29 -0800</bug_when>
    <thetext>Created attachment 115122
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502769</commentid>
    <comment_count>2</comment_count>
      <attachid>115122</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-15 03:01:53 -0800</bug_when>
    <thetext>Comment on attachment 115122
the patch

Clearing flags on attachment: 115122

Committed r100260: &lt;http://trac.webkit.org/changeset/100260&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502770</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-15 03:01:58 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115122</attachid>
            <date>2011-11-15 01:35:29 -0800</date>
            <delta_ts>2011-11-15 03:01:53 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>72366.patch</filename>
            <type>text/plain</type>
            <size>18089</size>
            <attacher name="Yuqiang Xian">yuqiang.xian</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTAwMjUwKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBA
CisyMDExLTExLTE1ICBZdXFpYW5nIFhpYW4gIDx5dXFpYW5nLnhpYW5AaW50ZWwuY29tPgorCisg
ICAgICAgIFJlbW92ZSBERkdKSVRDb21waWxlcklubGluZU1ldGhvZHMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMzY2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhvc2UgbWV0aG9kcyBhcmUgYWN0dWFs
bHkgc2VsZG9tIHVzZWQuIE1vZGlmeSB0aGUgZmV3IHN1Y2ggcGxhY2VzIGFuZAorICAgICAgICBy
ZW1vdmUgREZHSklUQ29tcGlsZXJJbmxpbmVNZXRob2RzIHN0dWZmcyB0b3RhbGx5LgorCisgICAg
ICAgICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGRmZy9ERkdKSVRDb21waWxlci5oOgor
ICAgICAgICAoSlNDOjpERkc6OkpJVENvbXBpbGVyOjphZGRyZXNzT2ZEb3VibGVDb25zdGFudCk6
CisgICAgICAgICogZGZnL0RGR0pJVENvbXBpbGVySW5saW5lTWV0aG9kcy5oOiBSZW1vdmVkLgor
ICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHA6CisgICAgICAgICogZGZnL0RGR1Nw
ZWN1bGF0aXZlSklULmg6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OnNpbGVu
dEZpbGxGUFIpOgorICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcDoKKyAg
ICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6ZmlsbEpTVmFsdWUpOgorICAgICAgICAo
SlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjpjYWNoZWRHZXRNZXRob2QpOgorCiAyMDExLTExLTE0
ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgREZHOjpTcGVjdWxh
dGl2ZUpJVCBhbmQgREZHOjpKSVRDb2RlR2VuZXJhdG9yIHNob3VsZCBiZSBjb21iaW5lZApJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0JKHJldmlzaW9uIDEw
MDI0OCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMzIsNyArMTMyLDYgQEAgamF2YXNjcmlwdGNvcmVfc291cmNlcyArPSBc
CiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdJbnRyaW5zaWMuaCBcCiAJU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRDb21waWxlci5jcHAgXAogCVNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHSklUQ29tcGlsZXIuaCBcCi0JU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdKSVRDb21waWxlcklubGluZU1ldGhvZHMuaCBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdOb2RlLmggXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmFuZHMuaCBc
CiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcCBcCkluZGV4OiBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMTAwMjQ4KQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdv
cmtpbmcgY29weSkKQEAgLTMyOCw3ICszMjgsNiBAQAogCQk4NjcwNEI4ODEyREJBMzM3MDBBOUZF
N0IgLyogWWFyclBhcnNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODY3MDRCODExMkRCQTMzNzAwQTlGRTdCIC8qIFlhcnJQYXJzZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OwogCQk4NjcwNEI4OTEyREJBMzM3MDBBOUZF
N0IgLyogWWFyclBhdHRlcm4uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODY3MDRCODIxMkRCQTMzNzAwQTlGRTdCIC8qIFlhcnJQYXR0ZXJuLmNwcCAq
LzsgfTsKIAkJODY3MDRCOEExMkRCQTMzNzAwQTlGRTdCIC8qIFlhcnJQYXR0ZXJuLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NjcwNEI4MzEyREJBMzM3
MDBBOUZFN0IgLyogWWFyclBhdHRlcm4uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwotCQk4Njg4MEYxRTE0MzI4QkI5MDBCMDhENDIgLyogREZHSklUQ29t
cGlsZXJJbmxpbmVNZXRob2RzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4Njg4MEYxQTE0MzI4QkI5MDBCMDhENDIgLyogREZHSklUQ29tcGlsZXJJbmxp
bmVNZXRob2RzLmggKi87IH07CiAJCTg2ODgwRjFGMTQzMjhCQjkwMEIwOEQ0MiAvKiBERkdTcGVj
dWxhdGl2ZUpJVDMyXzY0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDg2ODgwRjFCMTQzMjhCQjkwMEIwOEQ0MiAvKiBERkdTcGVjdWxhdGl2ZUpJVDMy
XzY0LmNwcCAqLzsgfTsKIAkJODY4ODBGNEQxNDM1M0IyMTAwQjA4RDQyIC8qIERGR1NwZWN1bGF0
aXZlSklUNjQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODY4ODBGNEMxNDM1M0IyMTAwQjA4RDQyIC8qIERGR1NwZWN1bGF0aXZlSklUNjQuY3BwICov
OyB9OwogCQk4NjhCRkEwODExN0NFRkQxMDBCOTA4QjEgLyogQXRvbWljU3RyaW5nLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg2OEJGQTAwMTE3Q0VG
RDEwMEI5MDhCMSAvKiBBdG9taWNTdHJpbmcuY3BwICovOyB9OwpAQCAtMTEwOCw3ICsxMTA3LDYg
QEAKIAkJODY3MDRCODMxMkRCQTMzNzAwQTlGRTdCIC8qIFlhcnJQYXR0ZXJuLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFlhcnJQYXR0ZXJuLmg7IHBhdGggPSB5YXJyL1lhcnJQ
YXR0ZXJuLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg2N0ZDMzVGMTFCNzYzOTUw
MDI1MTA1RSAvKiBKYXZhU2NyaXB0Q29yZS5KU1ZBTFVFMzJfNjRvbmx5LmV4cCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuZXhwb3J0czsgcGF0aCA9IEphdmFTY3JpcHRDb3JlLkpTVkFMVUUzMl82NG9u
bHkuZXhwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4NjdGQzM2MTExQjc2Mzk1MDAy
NTEwNUUgLyogSmF2YVNjcmlwdENvcmUuSlNWQUxVRTY0b25seS5leHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmV4cG9ydHM7IHBhdGggPSBKYXZhU2NyaXB0Q29yZS5KU1ZBTFVFNjRvbmx5LmV4cDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJODY4ODBGMUExNDMyOEJCOTAwQjA4RDQyIC8q
IERGR0pJVENvbXBpbGVySW5saW5lTWV0aG9kcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBERkdKSVRDb21waWxlcklubGluZU1ldGhvZHMuaDsgcGF0aCA9IGRmZy9ERkdKSVRD
b21waWxlcklubGluZU1ldGhvZHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODY4
ODBGMUIxNDMyOEJCOTAwQjA4RDQyIC8qIERGR1NwZWN1bGF0aXZlSklUMzJfNjQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gREZHU3BlY3VsYXRpdmVKSVQzMl82NC5j
cHA7IHBhdGggPSBkZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTg2ODgwRjRDMTQzNTNCMjEwMEIwOEQ0MiAvKiBERkdTcGVjdWxhdGl2
ZUpJVDY0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IERGR1NwZWN1
bGF0aXZlSklUNjQuY3BwOyBwYXRoID0gZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4NjhCRkEwMDExN0NFRkQxMDBCOTA4QjEgLyogQXRv
bWljU3RyaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEF0b21p
Y1N0cmluZy5jcHA7IHBhdGggPSB0ZXh0L0F0b21pY1N0cmluZy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC0yMzI2LDcgKzIzMjQsNiBAQAogCQkJCTBGRDgyRUYzMTQyMzA3Mzkw
MDE3OUM5NCAvKiBERkdJbnRyaW5zaWMuaCAqLywKIAkJCQk4NkVDOURCQjEzMjhERjgyMDAyQjJB
RDcgLyogREZHSklUQ29tcGlsZXIuY3BwICovLAogCQkJCTg2RUM5REJDMTMyOERGODIwMDJCMkFE
NyAvKiBERkdKSVRDb21waWxlci5oICovLAotCQkJCTg2ODgwRjFBMTQzMjhCQjkwMEIwOEQ0MiAv
KiBERkdKSVRDb21waWxlcklubGluZU1ldGhvZHMuaCAqLywKIAkJCQk4NkVDQTNFOTEzMkRFRjFD
MDAyQjJBRDcgLyogREZHTm9kZS5oICovLAogCQkJCTBGNjIwMTcxMTQzRkNEMkYwMDY4Qjc3QyAv
KiBERkdPcGVyYW5kcy5oICovLAogCQkJCTBGRDgyRTUyMTQxREFFREUwMDE3OUM5NCAvKiBERkdP
U1JFbnRyeS5jcHAgKi8sCkBAIC0yOTA0LDcgKzI5MDEsNiBAQAogCQkJCTBGNjM2REEwMTQyRDI3
RDcwMEIyRTY2QSAvKiBQYWNrZWRJbnRWZWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3NTIx
RTEzMTQyOTE2OUEwMDNDOEQwQyAvKiBDYXJkU2V0LmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkQ1
MkFBRTE0MzAzNUEwMDAyNkRDOUYgLyogVW5pb25GaW5kLmggaW4gSGVhZGVycyAqLywKLQkJCQk4
Njg4MEYxRTE0MzI4QkI5MDBCMDhENDIgLyogREZHSklUQ29tcGlsZXJJbmxpbmVNZXRob2RzLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkwRkUyMjhFRDE0MzZBQjI3MDAxOTZDNDggLyogSGV1cmlzdGlj
cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZGRjRCQjQxNDM5NTVFOTAwNjU1QkMwIC8qIERGR1N0
cnVjdHVyZVNldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODYwNEY1MDUxNDNDRTFDMjAwQjI5NUY1
IC8qIEpTR2xvYmFsVGhpcy5oIGluIEhlYWRlcnMgKi8sCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0pJVENvbXBpbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdKSVRDb21waWxlci5oCShyZXZpc2lvbiAxMDAyNDgpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR0pJVENvbXBpbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTIy
MSwyNCArMjIxLDYgQEAgcHVibGljOgogICAgICAgICB1bnNpZ25lZCBjb25zdGFudEluZGV4ID0g
Z3JhcGgoKVtub2RlSW5kZXhdLmNvbnN0YW50TnVtYmVyKCk7CiAgICAgICAgIHJldHVybiAmKGNv
ZGVCbG9jaygpLT5jb25zdGFudFJlZ2lzdGVyKEZpcnN0Q29uc3RhbnRSZWdpc3RlckluZGV4ICsg
Y29uc3RhbnRJbmRleCkpOwogICAgIH0KLQotICAgIHZvaWQgZW1pdExvYWRUYWcoTm9kZUluZGV4
LCBHUFJSZWcgdGFnKTsKLSAgICB2b2lkIGVtaXRMb2FkUGF5bG9hZChOb2RlSW5kZXgsIEdQUlJl
ZyBwYXlsb2FkKTsKLQotICAgIHZvaWQgZW1pdExvYWQoY29uc3QgSlNWYWx1ZSYsIEdQUlJlZyB0
YWcsIEdQUlJlZyBwYXlsb2FkKTsKLSAgICB2b2lkIGVtaXRMb2FkKE5vZGVJbmRleCwgR1BSUmVn
IHRhZywgR1BSUmVnIHBheWxvYWQpOwotICAgIHZvaWQgZW1pdExvYWQyKE5vZGVJbmRleCBpbmRl
eDEsIEdQUlJlZyB0YWcxLCBHUFJSZWcgcGF5bG9hZDEsIE5vZGVJbmRleCBpbmRleDIsIEdQUlJl
ZyB0YWcyLCBHUFJSZWcgcGF5bG9hZDIpOwotCi0gICAgdm9pZCBlbWl0TG9hZERvdWJsZShOb2Rl
SW5kZXgsIEZQUlJlZyB2YWx1ZSk7Ci0gICAgdm9pZCBlbWl0TG9hZEludDMyVG9Eb3VibGUoTm9k
ZUluZGV4LCBGUFJSZWcgdmFsdWUpOwotCi0gICAgdm9pZCBlbWl0U3RvcmUoTm9kZUluZGV4LCBH
UFJSZWcgdGFnLCBHUFJSZWcgcGF5bG9hZCk7Ci0gICAgdm9pZCBlbWl0U3RvcmUoTm9kZUluZGV4
LCBjb25zdCBKU1ZhbHVlIGNvbnN0YW50KTsKLSAgICB2b2lkIGVtaXRTdG9yZUludDMyKE5vZGVJ
bmRleCwgR1BSUmVnIHBheWxvYWQsIGJvb2wgaW5kZXhJc0ludDMyID0gZmFsc2UpOwotICAgIHZv
aWQgZW1pdFN0b3JlSW50MzIoTm9kZUluZGV4LCBUcnVzdGVkSW1tMzIgcGF5bG9hZCwgYm9vbCBp
bmRleElzSW50MzIgPSBmYWxzZSk7Ci0gICAgdm9pZCBlbWl0U3RvcmVDZWxsKE5vZGVJbmRleCwg
R1BSUmVnIHBheWxvYWQsIGJvb2wgaW5kZXhJc0NlbGwgPSBmYWxzZSk7Ci0gICAgdm9pZCBlbWl0
U3RvcmVCb29sKE5vZGVJbmRleCwgR1BSUmVnIHBheWxvYWQsIGJvb2wgaW5kZXhJc0Jvb2wgPSBm
YWxzZSk7Ci0gICAgdm9pZCBlbWl0U3RvcmVEb3VibGUoTm9kZUluZGV4LCBGUFJSZWcgdmFsdWUp
OwogI2VuZGlmCiAKICAgICB2b2lkIGFkZFByb3BlcnR5QWNjZXNzKGNvbnN0IFByb3BlcnR5QWNj
ZXNzUmVjb3JkJiByZWNvcmQpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0pJ
VENvbXBpbGVySW5saW5lTWV0aG9kcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHSklUQ29tcGlsZXJJbmxpbmVNZXRob2RzLmgJKHJldmlzaW9uIDEwMDI0OCkK
KysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklUQ29tcGlsZXJJbmxpbmVNZXRob2Rz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTEsMTY5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAy
MDExIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
LSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoK
LSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5E
IEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICog
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCi0gKi8KLQotI2lmbmRlZiBERkdKSVRDb21waWxlcklu
bGluZU1ldGhvZHNfaAotI2RlZmluZSBERkdKSVRDb21waWxlcklubGluZU1ldGhvZHNfaAotCi0K
LSNpZiBFTkFCTEUoREZHX0pJVCkKLQotbmFtZXNwYWNlIEpTQyB7IG5hbWVzcGFjZSBERkcgewot
Ci0jaWYgVVNFKEpTVkFMVUUzMl82NCkKLQotaW5saW5lIHZvaWQgSklUQ29tcGlsZXI6OmVtaXRM
b2FkVGFnKE5vZGVJbmRleCBpbmRleCwgR1BSUmVnIHRhZykKLXsKLSAgICBpZiAoaXNDb25zdGFu
dChpbmRleCkpIHsKLSAgICAgICAgbW92ZShJbW0zMih2YWx1ZU9mSlNDb25zdGFudChpbmRleCku
dGFnKCkpLCB0YWcpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgTm9kZSYgbm9kZSA9
IGdyYXBoKClbaW5kZXhdOwotICAgIFZpcnR1YWxSZWdpc3RlciB2aXJ0dWFsUmVnaXN0ZXIgPSBu
b2RlLnZpcnR1YWxSZWdpc3RlcigpOwotICAgIGxvYWQzMih0YWdGb3IodmlydHVhbFJlZ2lzdGVy
KSwgdGFnKTsKLX0KLQotaW5saW5lIHZvaWQgSklUQ29tcGlsZXI6OmVtaXRMb2FkUGF5bG9hZChO
b2RlSW5kZXggaW5kZXgsIEdQUlJlZyBwYXlsb2FkKQotewotICAgIGlmIChpc0NvbnN0YW50KGlu
ZGV4KSkgewotICAgICAgICBtb3ZlKEltbTMyKHZhbHVlT2ZKU0NvbnN0YW50KGluZGV4KS5wYXls
b2FkKCkpLCBwYXlsb2FkKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIE5vZGUmIG5v
ZGUgPSBncmFwaCgpW2luZGV4XTsKLSAgICBWaXJ0dWFsUmVnaXN0ZXIgdmlydHVhbFJlZ2lzdGVy
ID0gbm9kZS52aXJ0dWFsUmVnaXN0ZXIoKTsKLSAgICBsb2FkMzIocGF5bG9hZEZvcih2aXJ0dWFs
UmVnaXN0ZXIpLCBwYXlsb2FkKTsKLX0KLQotaW5saW5lIHZvaWQgSklUQ29tcGlsZXI6OmVtaXRM
b2FkKGNvbnN0IEpTVmFsdWUmIHYsIEdQUlJlZyB0YWcsIEdQUlJlZyBwYXlsb2FkKQotewotICAg
IG1vdmUoSW1tMzIodi5wYXlsb2FkKCkpLCBwYXlsb2FkKTsKLSAgICBtb3ZlKEltbTMyKHYudGFn
KCkpLCB0YWcpOwotfQotCi1pbmxpbmUgdm9pZCBKSVRDb21waWxlcjo6ZW1pdExvYWQoTm9kZUlu
ZGV4IGluZGV4LCBHUFJSZWcgdGFnLCBHUFJSZWcgcGF5bG9hZCkKLXsKLSAgICBBU1NFUlQodGFn
ICE9IHBheWxvYWQpOwotICAgIGVtaXRMb2FkUGF5bG9hZChpbmRleCwgcGF5bG9hZCk7Ci0gICAg
ZW1pdExvYWRUYWcoaW5kZXgsIHRhZyk7Ci0gICAgcmV0dXJuOwotfQotCi1pbmxpbmUgdm9pZCBK
SVRDb21waWxlcjo6ZW1pdExvYWQyKE5vZGVJbmRleCBpbmRleDEsIEdQUlJlZyB0YWcxLCBHUFJS
ZWcgcGF5bG9hZDEsIE5vZGVJbmRleCBpbmRleDIsIEdQUlJlZyB0YWcyLCBHUFJSZWcgcGF5bG9h
ZDIpCi17Ci0gICAgZW1pdExvYWQoaW5kZXgyLCB0YWcyLCBwYXlsb2FkMik7Ci0gICAgZW1pdExv
YWQoaW5kZXgxLCB0YWcxLCBwYXlsb2FkMSk7Ci19Ci0KLWlubGluZSB2b2lkIEpJVENvbXBpbGVy
OjplbWl0TG9hZERvdWJsZShOb2RlSW5kZXggaW5kZXgsIEZQUlJlZyB2YWx1ZSkKLXsKLSAgICBp
ZiAoaXNDb25zdGFudChpbmRleCkpCi0gICAgICAgIGxvYWREb3VibGUoYWRkcmVzc09mRG91Ymxl
Q29uc3RhbnQoaW5kZXgpLCB2YWx1ZSk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIE5vZGUmIG5vZGUg
PSBncmFwaCgpW2luZGV4XTsKLSAgICAgICAgVmlydHVhbFJlZ2lzdGVyIHZpcnR1YWxSZWdpc3Rl
ciA9IG5vZGUudmlydHVhbFJlZ2lzdGVyKCk7Ci0gICAgICAgIGxvYWREb3VibGUoYWRkcmVzc0Zv
cih2aXJ0dWFsUmVnaXN0ZXIpLCB2YWx1ZSk7Ci0gICAgfQotfQotCi1pbmxpbmUgdm9pZCBKSVRD
b21waWxlcjo6ZW1pdExvYWRJbnQzMlRvRG91YmxlKE5vZGVJbmRleCBpbmRleCwgRlBSUmVnIHZh
bHVlKQotewotICAgIGlmIChpc0NvbnN0YW50KGluZGV4KSkgewotICAgICAgICBjaGFyKiBieXRl
UG9pbnRlciA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGFkZHJlc3NPZkRvdWJsZUNvbnN0YW50
KGluZGV4KSk7Ci0gICAgICAgIGNvbnZlcnRJbnQzMlRvRG91YmxlKEFic29sdXRlQWRkcmVzcyhi
eXRlUG9pbnRlciArIE9CSkVDVF9PRkZTRVRPRihKU1ZhbHVlLCB1LmFzQml0cy5wYXlsb2FkKSks
IHZhbHVlKTsKLSAgICB9IGVsc2UgewotICAgICAgICBOb2RlJiBub2RlID0gZ3JhcGgoKVtpbmRl
eF07Ci0gICAgICAgIFZpcnR1YWxSZWdpc3RlciB2aXJ0dWFsUmVnaXN0ZXIgPSBub2RlLnZpcnR1
YWxSZWdpc3RlcigpOwotICAgICAgICBjb252ZXJ0SW50MzJUb0RvdWJsZShwYXlsb2FkRm9yKHZp
cnR1YWxSZWdpc3RlciksIHZhbHVlKTsKLSAgICB9Ci19Ci0KLWlubGluZSB2b2lkIEpJVENvbXBp
bGVyOjplbWl0U3RvcmUoTm9kZUluZGV4IGluZGV4LCBHUFJSZWcgdGFnLCBHUFJSZWcgcGF5bG9h
ZCkKLXsKLSAgICBOb2RlJiBub2RlID0gZ3JhcGgoKVtpbmRleF07Ci0gICAgVmlydHVhbFJlZ2lz
dGVyIHZpcnR1YWxSZWdpc3RlciA9IG5vZGUudmlydHVhbFJlZ2lzdGVyKCk7Ci0gICAgc3RvcmUz
MihwYXlsb2FkLCBwYXlsb2FkRm9yKHZpcnR1YWxSZWdpc3RlcikpOwotICAgIHN0b3JlMzIodGFn
LCB0YWdGb3IodmlydHVhbFJlZ2lzdGVyKSk7Ci19Ci0KLWlubGluZSB2b2lkIEpJVENvbXBpbGVy
OjplbWl0U3RvcmVJbnQzMihOb2RlSW5kZXggaW5kZXgsIEdQUlJlZyBwYXlsb2FkLCBib29sIGlu
ZGV4SXNJbnQzMikKLXsKLSAgICBOb2RlJiBub2RlID0gZ3JhcGgoKVtpbmRleF07Ci0gICAgVmly
dHVhbFJlZ2lzdGVyIHZpcnR1YWxSZWdpc3RlciA9IG5vZGUudmlydHVhbFJlZ2lzdGVyKCk7Ci0g
ICAgc3RvcmUzMihwYXlsb2FkLCBwYXlsb2FkRm9yKHZpcnR1YWxSZWdpc3RlcikpOwotICAgIGlm
ICghaW5kZXhJc0ludDMyKQotICAgICAgICBzdG9yZTMyKFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpJ
bnQzMlRhZyksIHRhZ0Zvcih2aXJ0dWFsUmVnaXN0ZXIpKTsKLX0KLQotaW5saW5lIHZvaWQgSklU
Q29tcGlsZXI6OmVtaXRTdG9yZUludDMyKE5vZGVJbmRleCBpbmRleCwgVHJ1c3RlZEltbTMyIHBh
eWxvYWQsIGJvb2wgaW5kZXhJc0ludDMyKQotewotICAgIE5vZGUmIG5vZGUgPSBncmFwaCgpW2lu
ZGV4XTsKLSAgICBWaXJ0dWFsUmVnaXN0ZXIgdmlydHVhbFJlZ2lzdGVyID0gbm9kZS52aXJ0dWFs
UmVnaXN0ZXIoKTsKLSAgICBzdG9yZTMyKHBheWxvYWQsIHBheWxvYWRGb3IodmlydHVhbFJlZ2lz
dGVyKSk7Ci0gICAgaWYgKCFpbmRleElzSW50MzIpCi0gICAgICAgIHN0b3JlMzIoVHJ1c3RlZElt
bTMyKEpTVmFsdWU6OkludDMyVGFnKSwgdGFnRm9yKHZpcnR1YWxSZWdpc3RlcikpOwotfQotCi1p
bmxpbmUgdm9pZCBKSVRDb21waWxlcjo6ZW1pdFN0b3JlQ2VsbChOb2RlSW5kZXggaW5kZXgsIEdQ
UlJlZyBwYXlsb2FkLCBib29sIGluZGV4SXNDZWxsKQotewotICAgIE5vZGUmIG5vZGUgPSBncmFw
aCgpW2luZGV4XTsKLSAgICBWaXJ0dWFsUmVnaXN0ZXIgdmlydHVhbFJlZ2lzdGVyID0gbm9kZS52
aXJ0dWFsUmVnaXN0ZXIoKTsKLSAgICBzdG9yZTMyKHBheWxvYWQsIHBheWxvYWRGb3IodmlydHVh
bFJlZ2lzdGVyKSk7Ci0gICAgaWYgKCFpbmRleElzQ2VsbCkKLSAgICAgICAgc3RvcmUzMihUcnVz
dGVkSW1tMzIoSlNWYWx1ZTo6Q2VsbFRhZyksIHRhZ0Zvcih2aXJ0dWFsUmVnaXN0ZXIpKTsKLX0K
LQotaW5saW5lIHZvaWQgSklUQ29tcGlsZXI6OmVtaXRTdG9yZUJvb2woTm9kZUluZGV4IGluZGV4
LCBHUFJSZWcgcGF5bG9hZCwgYm9vbCBpbmRleElzQm9vbCkKLXsKLSAgICBOb2RlJiBub2RlID0g
Z3JhcGgoKVtpbmRleF07Ci0gICAgVmlydHVhbFJlZ2lzdGVyIHZpcnR1YWxSZWdpc3RlciA9IG5v
ZGUudmlydHVhbFJlZ2lzdGVyKCk7Ci0gICAgc3RvcmUzMihwYXlsb2FkLCBwYXlsb2FkRm9yKHZp
cnR1YWxSZWdpc3RlcikpOwotICAgIGlmICghaW5kZXhJc0Jvb2wpCi0gICAgICAgIHN0b3JlMzIo
VHJ1c3RlZEltbTMyKEpTVmFsdWU6OkJvb2xlYW5UYWcpLCB0YWdGb3IodmlydHVhbFJlZ2lzdGVy
KSk7Ci19Ci0KLWlubGluZSB2b2lkIEpJVENvbXBpbGVyOjplbWl0U3RvcmVEb3VibGUoTm9kZUlu
ZGV4IGluZGV4LCBGUFJSZWcgdmFsdWUpCi17Ci0gICAgTm9kZSYgbm9kZSA9IGdyYXBoKClbaW5k
ZXhdOwotICAgIFZpcnR1YWxSZWdpc3RlciB2aXJ0dWFsUmVnaXN0ZXIgPSBub2RlLnZpcnR1YWxS
ZWdpc3RlcigpOwotICAgIHN0b3JlRG91YmxlKHZhbHVlLCBhZGRyZXNzRm9yKHZpcnR1YWxSZWdp
c3RlcikpOwotfQotCi1pbmxpbmUgdm9pZCBKSVRDb21waWxlcjo6ZW1pdFN0b3JlKE5vZGVJbmRl
eCBpbmRleCwgY29uc3QgSlNWYWx1ZSBjb25zdGFudCkKLXsKLSAgICBOb2RlJiBub2RlID0gZ3Jh
cGgoKVtpbmRleF07Ci0gICAgVmlydHVhbFJlZ2lzdGVyIHZpcnR1YWxSZWdpc3RlciA9IG5vZGUu
dmlydHVhbFJlZ2lzdGVyKCk7Ci0gICAgc3RvcmUzMihJbW0zMihjb25zdGFudC5wYXlsb2FkKCkp
LCBwYXlsb2FkRm9yKHZpcnR1YWxSZWdpc3RlcikpOwotICAgIHN0b3JlMzIoSW1tMzIoY29uc3Rh
bnQudGFnKCkpLCB0YWdGb3IodmlydHVhbFJlZ2lzdGVyKSk7Ci19Ci0KLSNlbmRpZiAvLyBVU0Uo
SlNWQUxVRTMyXzY0KQotCi19IH0gLy8gbmFtZXNwYWNlIEpTQzo6REZHCi0KLSNlbmRpZiAvLyBF
TkFCTEVfREZHX0pJVAotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcAkocmV2aXNpb24gMTAwMjQ4KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMzAsNyArMzAsNiBAQAogI2lmIEVOQUJMRShERkdfSklUKQogCiAj
aW5jbHVkZSAiSlNCeXRlQXJyYXkuaCIKLSNpbmNsdWRlICJERkdKSVRDb21waWxlcklubGluZU1l
dGhvZHMuaCIKIAogbmFtZXNwYWNlIEpTQyB7IG5hbWVzcGFjZSBERkcgewogCkBAIC0yNTEsMjYg
KzI1MCwyMCBAQCBib29sIFNwZWN1bGF0aXZlSklUOjpmaWxsSlNWYWx1ZShOb2RlSW5kCiAgICAg
Y2FzZSBEYXRhRm9ybWF0Tm9uZTogewogCiAgICAgICAgIGlmIChub2RlLmhhc0NvbnN0YW50KCkp
IHsKLSAgICAgICAgICAgIGlmIChpc0ludDMyQ29uc3RhbnQobm9kZUluZGV4KSkgewotICAgICAg
ICAgICAgICAgIHRhZ0dQUiA9IGFsbG9jYXRlKCk7Ci0gICAgICAgICAgICAgICAgcGF5bG9hZEdQ
UiA9IGFsbG9jYXRlKCk7Ci0gICAgICAgICAgICAgICAgbV9qaXQuZW1pdExvYWQobm9kZUluZGV4
LCB0YWdHUFIsIHBheWxvYWRHUFIpOwotICAgICAgICAgICAgICAgIGluZm8uZmlsbEpTVmFsdWUo
dGFnR1BSLCBwYXlsb2FkR1BSLCBEYXRhRm9ybWF0SlNJbnRlZ2VyKTsKLSAgICAgICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICAgICAgdGFnR1BSID0gYWxsb2NhdGUoKTsKLSAgICAgICAgICAg
ICAgICBwYXlsb2FkR1BSID0gYWxsb2NhdGUoKTsKLSAgICAgICAgICAgICAgICBtX2ppdC5lbWl0
TG9hZChub2RlSW5kZXgsIHRhZ0dQUiwgcGF5bG9hZEdQUik7Ci0gICAgICAgICAgICAgICAgaW5m
by5maWxsSlNWYWx1ZSh0YWdHUFIsIHBheWxvYWRHUFIsIERhdGFGb3JtYXRKUyk7Ci0gICAgICAg
ICAgICB9Ci0KKyAgICAgICAgICAgIHRhZ0dQUiA9IGFsbG9jYXRlKCk7CisgICAgICAgICAgICBw
YXlsb2FkR1BSID0gYWxsb2NhdGUoKTsKKyAgICAgICAgICAgIG1faml0Lm1vdmUoSW1tMzIodmFs
dWVPZkpTQ29uc3RhbnQobm9kZUluZGV4KS50YWcoKSksIHRhZ0dQUik7CisgICAgICAgICAgICBt
X2ppdC5tb3ZlKEltbTMyKHZhbHVlT2ZKU0NvbnN0YW50KG5vZGVJbmRleCkucGF5bG9hZCgpKSwg
cGF5bG9hZEdQUik7CiAgICAgICAgICAgICBtX2dwcnMucmV0YWluKHRhZ0dQUiwgdmlydHVhbFJl
Z2lzdGVyLCBTcGlsbE9yZGVyQ29uc3RhbnQpOwogICAgICAgICAgICAgbV9ncHJzLnJldGFpbihw
YXlsb2FkR1BSLCB2aXJ0dWFsUmVnaXN0ZXIsIFNwaWxsT3JkZXJDb25zdGFudCk7CisgICAgICAg
ICAgICBpbmZvLmZpbGxKU1ZhbHVlKHRhZ0dQUiwgcGF5bG9hZEdQUiwgaXNJbnQzMkNvbnN0YW50
KG5vZGVJbmRleCkgPyBEYXRhRm9ybWF0SlNJbnRlZ2VyIDogRGF0YUZvcm1hdEpTKTsKICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgIERhdGFGb3JtYXQgc3BpbGxGb3JtYXQgPSBpbmZvLnNw
aWxsRm9ybWF0KCk7CiAgICAgICAgICAgICBBU1NFUlQoc3BpbGxGb3JtYXQgJiBEYXRhRm9ybWF0
SlMpOwogICAgICAgICAgICAgdGFnR1BSID0gYWxsb2NhdGUoKTsKICAgICAgICAgICAgIHBheWxv
YWRHUFIgPSBhbGxvY2F0ZSgpOwotICAgICAgICAgICAgbV9qaXQuZW1pdExvYWQobm9kZUluZGV4
LCB0YWdHUFIsIHBheWxvYWRHUFIpOworICAgICAgICAgICAgbV9qaXQubG9hZDMyKEpJVENvbXBp
bGVyOjp0YWdGb3IodmlydHVhbFJlZ2lzdGVyKSwgdGFnR1BSKTsKKyAgICAgICAgICAgIG1faml0
LmxvYWQzMihKSVRDb21waWxlcjo6cGF5bG9hZEZvcih2aXJ0dWFsUmVnaXN0ZXIpLCBwYXlsb2Fk
R1BSKTsKICAgICAgICAgICAgIG1fZ3Bycy5yZXRhaW4odGFnR1BSLCB2aXJ0dWFsUmVnaXN0ZXIs
IFNwaWxsT3JkZXJTcGlsbGVkKTsKICAgICAgICAgICAgIG1fZ3Bycy5yZXRhaW4ocGF5bG9hZEdQ
UiwgdmlydHVhbFJlZ2lzdGVyLCBTcGlsbE9yZGVyU3BpbGxlZCk7CiAgICAgICAgICAgICBpbmZv
LmZpbGxKU1ZhbHVlKHRhZ0dQUiwgcGF5bG9hZEdQUiwgc3BpbGxGb3JtYXQgPT0gRGF0YUZvcm1h
dEpTRG91YmxlID8gRGF0YUZvcm1hdEpTIDogc3BpbGxGb3JtYXQpOwpAQCAtOTQxLDcgKzkzNCw2
IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNhY2hlZEdldE1ldGhvZChHUFIKICAgICBKSVRDb21w
aWxlcjo6Q2FsbCBzbG93Q2FsbDsKICAgICBKSVRDb21waWxlcjo6RGF0YUxhYmVsUHRyIHN0cnVj
dFRvQ29tcGFyZSwgcHJvdG9PYmosIHByb3RvU3RydWN0VG9Db21wYXJlLCBwdXRGdW5jdGlvbjsK
ICAgICAKLSAgICAvLyBtX2ppdC5lbWl0TG9hZFBheWxvYWQoYmFzZUluZGV4LCBzY3JhdGNoR1BS
KTsKICAgICBKSVRDb21waWxlcjo6SnVtcCB3cm9uZ1N0cnVjdHVyZSA9IG1faml0LmJyYW5jaFB0
cldpdGhQYXRjaChKSVRDb21waWxlcjo6Tm90RXF1YWwsIEpJVENvbXBpbGVyOjpBZGRyZXNzKGJh
c2VQYXlsb2FkR1BSLCBKU0NlbGw6OnN0cnVjdHVyZU9mZnNldCgpKSwgc3RydWN0VG9Db21wYXJl
LCBKSVRDb21waWxlcjo6VHJ1c3RlZEltbVB0cihyZWludGVycHJldF9jYXN0PHZvaWQqPigtMSkp
KTsKICAgICBwcm90b09iaiA9IG1faml0Lm1vdmVXaXRoUGF0Y2goSklUQ29tcGlsZXI6OlRydXN0
ZWRJbW1QdHIoMCksIHJlc3VsdFBheWxvYWRHUFIpOwogICAgIEpJVENvbXBpbGVyOjpKdW1wIHdy
b25nUHJvdG9TdHJ1Y3R1cmUgPSBtX2ppdC5icmFuY2hQdHJXaXRoUGF0Y2goSklUQ29tcGlsZXI6
Ok5vdEVxdWFsLCBKSVRDb21waWxlcjo6QWRkcmVzcyhyZXN1bHRQYXlsb2FkR1BSLCBKU0NlbGw6
OnN0cnVjdHVyZU9mZnNldCgpKSwgcHJvdG9TdHJ1Y3RUb0NvbXBhcmUsIEpJVENvbXBpbGVyOjpU
cnVzdGVkSW1tUHRyKHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KC0xKSkpOwpJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAJKHJldmlzaW9u
IDEwMDI0OCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw3ICsyOCw2IEBACiAKICNpZiBFTkFCTEUoREZHX0pJ
VCkKIAotI2luY2x1ZGUgIkRGR0pJVENvbXBpbGVySW5saW5lTWV0aG9kcy5oIgogI2luY2x1ZGUg
IkpTQnl0ZUFycmF5LmgiCiAjaW5jbHVkZSAiTGlua0J1ZmZlci5oIgogCkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5oCShyZXZpc2lvbiAxMDAy
NDgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmgJKHdv
cmtpbmcgY29weSkKQEAgLTQ5OSw4ICs0OTksOCBAQCBwcml2YXRlOgogICAgICAgICBBU1NFUlQo
aW5mby5mcHIoKSA9PSB0YXJnZXQpOwogCiAgICAgICAgIE5vZGVJbmRleCBub2RlSW5kZXggPSBp
bmZvLm5vZGVJbmRleCgpOwotI2lmIFVTRShKU1ZBTFVFNjQpCiAgICAgICAgIE5vZGUmIG5vZGUg
PSBhdChub2RlSW5kZXgpOworI2lmIFVTRShKU1ZBTFVFNjQpCiAgICAgICAgIEFTU0VSVChpbmZv
LnJlZ2lzdGVyRm9ybWF0KCkgPT0gRGF0YUZvcm1hdERvdWJsZSk7CiAKICAgICAgICAgaWYgKG5v
ZGUuaGFzQ29uc3RhbnQoKSkgewpAQCAtNTIyLDcgKzUyMiwxMSBAQCBwcml2YXRlOgogI2VsaWYg
VVNFKEpTVkFMVUUzMl82NCkKICAgICAgICAgVU5VU0VEX1BBUkFNKGNhblRyYW1wbGUpOwogICAg
ICAgICBBU1NFUlQoaW5mby5yZWdpc3RlckZvcm1hdCgpID09IERhdGFGb3JtYXREb3VibGUgfHwg
aW5mby5yZWdpc3RlckZvcm1hdCgpID09IERhdGFGb3JtYXRKU0RvdWJsZSk7Ci0gICAgICAgIG1f
aml0LmVtaXRMb2FkRG91YmxlKG5vZGVJbmRleCwgdGFyZ2V0KTsKKyAgICAgICAgaWYgKG5vZGUu
aGFzQ29uc3RhbnQoKSkgeworICAgICAgICAgICAgQVNTRVJUKGlzTnVtYmVyQ29uc3RhbnQobm9k
ZUluZGV4KSk7CisgICAgICAgICAgICBtX2ppdC5sb2FkRG91YmxlKGFkZHJlc3NPZkRvdWJsZUNv
bnN0YW50KG5vZGVJbmRleCksIHRhcmdldCk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAg
bV9qaXQubG9hZERvdWJsZShKSVRDb21waWxlcjo6YWRkcmVzc0ZvcihzcGlsbE1lKSwgdGFyZ2V0
KTsKICNlbmRpZgogICAgIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>