<?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>184311</bug_id>
          
          <creation_ts>2018-04-04 11:35:25 -0700</creation_ts>
          <short_desc>Track the paint frequency through a new class named PaintFrequencyTracker</short_desc>
          <delta_ts>2018-04-04 13:57:26 -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>Layout and Rendering</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>
          
          <blocked>178750</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>koivisto</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1411816</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2018-04-04 11:35:25 -0700</bug_when>
    <thetext>This is mostly code re-factoring and clean-up. PaintFrequencyInfo will be renamed PaintFrequencyTracker and move it a separate header file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1411835</commentid>
    <comment_count>1</comment_count>
      <attachid>337205</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2018-04-04 12:31:38 -0700</bug_when>
    <thetext>Created attachment 337205
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1411874</commentid>
    <comment_count>2</comment_count>
      <attachid>337205</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-04-04 13:56:55 -0700</bug_when>
    <thetext>Comment on attachment 337205
Patch

Clearing flags on attachment: 337205

Committed r230274: &lt;https://trac.webkit.org/changeset/230274&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1411875</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-04-04 13:56:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1411876</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-04-04 13:57:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/39186968&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>337205</attachid>
            <date>2018-04-04 12:31:38 -0700</date>
            <delta_ts>2018-04-04 13:56:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184311-20180404123137.patch</filename>
            <type>text/plain</type>
            <size>15631</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzMDI2OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBACisyMDE4LTA0LTA0ICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgVHJhY2sgdGhl
IHBhaW50IGZyZXF1ZW5jeSB0aHJvdWdoIGEgbmV3IGNsYXNzIG5hbWVkIFBhaW50RnJlcXVlbmN5
VHJhY2tlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTg0MzExCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
UGFpbnRGcmVxdWVuY3lUcmFja2VyIGlzIGEgY2xhc3Mgd2hpY2ggZGV0ZWN0cyB3aGVuIGEgbGF5
ZXIgaXMgcGFpbnRlZCAKKyAgICAgICAgZnJlcXVlbnRseS4gU2luZ2xlUGFpbnRGcmVxdWVuY3lU
cmFja2luZyBpcyB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGgKKyAgICAgICAgUGFpbnRGcmVxdWVu
Y3lUcmFja2VyIHRvIHJlY29yZWQgYSBzaW5nbGUgcGFpbnQgdGltaW5nLgorCisgICAgICAgICog
cmVuZGVyaW5nL1BhaW50RnJlcXVlbmN5VHJhY2tlci5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlBhaW50RnJlcXVlbmN5VHJhY2tlcjo6YmVnaW4pOgorICAgICAgICAoV2ViQ29yZTo6UGFp
bnRGcmVxdWVuY3lUcmFja2VyOjplbmQpOgorICAgICAgICAoV2ViQ29yZTo6UGFpbnRGcmVxdWVu
Y3lUcmFja2VyOjpwYWludGluZ0ZyZXF1ZW50bHkgY29uc3QpOgorICAgICAgICBTaW1wbGlmeSB0
aGUgbG9naWMgZm9yIHRyYWNraW5nIHRoZSBwYWludCBmcmVxdWVuY3kgYW5kIG1vdmUgaXQgZnJv
bQorICAgICAgICBSZW5kZXJMYXllci5jcHAuCisKKyAgICAgICAgKFdlYkNvcmU6OlNpbmdsZVBh
aW50RnJlcXVlbmN5VHJhY2tpbmc6OlNpbmdsZVBhaW50RnJlcXVlbmN5VHJhY2tpbmcpOgorICAg
ICAgICAoV2ViQ29yZTo6U2luZ2xlUGFpbnRGcmVxdWVuY3lUcmFja2luZzo6flNpbmdsZVBhaW50
RnJlcXVlbmN5VHJhY2tpbmcpOgorICAgICAgICBBIGNvbnZlbmllbnQgd2F5IHRvIGJyYWNrZXQg
dGhlIGJlZ2luKCkgYW5kIHRoZSBlbmQoKSBtZXRob2RzIG9mCisgICAgICAgIFBhaW50RnJlcXVl
bmN5VHJhY2tlci4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6cGFpbnRMYXllckNvbnRlbnRzKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlckxheWVyOjpjYWxjdWxhdGVDbGlwUmVjdHMgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGFpbnRGcmVxdWVuY3lJbmZvOjpQYWludEZyZXF1ZW5jeUluZm8pOiBEZWxl
dGVkLgorICAgICAgICAoV2ViQ29yZTo6UGFpbnRGcmVxdWVuY3lJbmZvOjpzZXRQYWludGVkQ2Fj
aGVhYmxlUmVzb3VyY2UpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGFpbnRGcmVxdWVu
Y3lJbmZvOjpwYWludGluZ0ZyZXF1ZW50bHkgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6UGFpbnRGcmVxdWVuY3lJbmZvOjp1cGRhdGVQYWludEZyZXF1ZW5jeSk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpQYWludEZyZXF1ZW5jeUluZm86OnBhaW50aW5nQ2FjaGVhYmxl
UmVzb3VyY2UpOiBEZWxldGVkLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5oOgor
ICAgICAgICBSZW5hbWUgUGFpbnRGcmVxdWVuY3lJbmZvIHRvIFBhaW50RnJlcXVlbmN5VHJhY2tl
ciBhbmQgbW92ZSBpdCBhIHNlcGFyYXRlCisgICAgICAgIGhlYWRlciBmaWxlLgorCiAyMDE4LTA0
LTA0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUg
dW51c2VkIEhUVFAgaGVhZGVyIG5hbWVzCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyMzAyNjgpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29w
eSkKQEAgLTE2ODcsNiArMTY4Nyw3IEBACiAJCTU1QTMzNkY3MUQ4MjA5RjQwMDIyQzRDNyAvKiBO
YXRpdmVJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTVBMzM2RjYxRDgyMDlGNDAwMjJDNEM3IC8qIE5hdGl2ZUltYWdlLmggKi87IH07CiAJCTU1
QTMzNkY5MUQ4MjFFM0MwMDIyQzRDNyAvKiBJbWFnZUJhY2tpbmdTdG9yZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTVBMzM2RjgxRDgyMUUzQzAwMjJD
NEM3IC8qIEltYWdlQmFja2luZ1N0b3JlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTVBRjE0RTYxRUFBQzU5QjAwMjZFRUFBIC8qIFVUSVJlZ2lz
dHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NUFG
MTRFNDFFQUFDNTlCMDAyNkVFQUEgLyogVVRJUmVnaXN0cnkuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1NUVDOTU5OTIwNkFBN0EwMDA3REQwQTkg
LyogUGFpbnRGcmVxdWVuY3lUcmFja2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1NUVDOTU5NzIwNjlDOTJEMDA3REQwQTkgLyogUGFpbnRGcmVxdWVu
Y3lUcmFja2VyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJNTcwNDQwNUExRTUzOTM2MjAwMzU2NjAxIC8qIEpTQWVzQ2JjQ2ZiUGFyYW1zLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzA0NDA1OTFFNTM5
MzYyMDAzNTY2MDEgLyogSlNBZXNDYmNDZmJQYXJhbXMuaCAqLzsgfTsKIAkJNTcwNkE2OTYxRERF
NUM5NTAwQTAzQjE0IC8qIENyeXB0b0FsZ29yaXRobVJzYU9hZXBQYXJhbXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MDZBNjk1MURERTVDOTUwMEEw
M0IxNCAvKiBDcnlwdG9BbGdvcml0aG1Sc2FPYWVwUGFyYW1zLmggKi87IH07CiAJCTU3MDZBNjk4
MURERTVFNDYwMEEwM0IxNCAvKiBKU1JzYU9hZXBQYXJhbXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MDZBNjk3MURERTVFNDYwMEEwM0IxNCAvKiBK
U1JzYU9hZXBQYXJhbXMuaCAqLzsgfTsKQEAgLTgyNjMsNiArODI2NCw3IEBACiAJCTU1QUYxNEUz
MUVBQUM1OUIwMDI2RUVBQSAvKiBVVElSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBV
VElSZWdpc3RyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU1QUYxNEU0MUVB
QUM1OUIwMDI2RUVBQSAvKiBVVElSZWdpc3RyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVVElSZWdpc3Ry
eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1NUQ0MDhGNzFBN0M2MzE4MDBDNzg0
NTAgLyogU1ZHSW1hZ2VDbGllbnRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNWR0ltYWdlQ2xpZW50cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NUVDOTU5
NzIwNjlDOTJEMDA3REQwQTkgLyogUGFpbnRGcmVxdWVuY3lUcmFja2VyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFBhaW50RnJlcXVlbmN5VHJhY2tlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1NzA0NDA1NzFFNTM4NTE2MDAzNTY2MDEgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0NGQk1hYy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1B
RVNfQ0ZCTWFjLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTcwNDQwNTkxRTUz
OTM2MjAwMzU2NjAxIC8qIEpTQWVzQ2JjQ2ZiUGFyYW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTQWVzQ2JjQ2ZiUGFyYW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTU3MDQ0MDVCMUU1MzkzNzkwMDM1NjYwMSAvKiBKU0Flc0NiY0NmYlBhcmFtcy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0Flc0NiY0NmYlBhcmFtcy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yNTUyMSw2ICsyNTUyMyw3IEBACiAJ
CQkJQ0RFN0ZDNDMxODE5MDRCMTAwMkJCQjc3IC8qIE9yZGVySXRlcmF0b3IuaCAqLywKIAkJCQkz
Nzc0QUJBMzBGQTIxRUI0MDBBRDdERTkgLyogT3ZlcmxhcFRlc3RSZXF1ZXN0Q2xpZW50LmggKi8s
CiAJCQkJOTM3N0FCOUYxNURFRkVFRjAwMzFGRDA0IC8qIFBhZ2luYXRpb24uaCAqLywKKwkJCQk1
NUVDOTU5NzIwNjlDOTJEMDA3REQwQTkgLyogUGFpbnRGcmVxdWVuY3lUcmFja2VyLmggKi8sCiAJ
CQkJMDg4NTA2N0QxMURBMDQ1QjAwMTgyQjk4IC8qIFBhaW50SW5mby5oICovLAogCQkJCTA4ODUw
NjdFMTFEQTA0NUIwMDE4MkI5OCAvKiBQYWludFBoYXNlLmggKi8sCiAJCQkJQjJCMUY3MTQwRDAw
Q0FBODAwNEFFQTY0IC8qIFBvaW50ZXJFdmVudHNIaXRSdWxlcy5jcHAgKi8sCkBAIC0yOTIyMyw2
ICsyOTIyNiw3IEBACiAJCQkJMzcxRTY1Q0MxMzY2MUVEQzAwQkVFREIwIC8qIFBhZ2VTZXJpYWxp
emVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlFMTI4NEFFMTEwNDQ3RDQ1MDBFQUVCNTIgLyogUGFn
ZVRyYW5zaXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM3N0FCQTAxNURFRkVFRjAw
MzFGRDA0IC8qIFBhZ2luYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTU1RUM5NTk5MjA2QUE3
QTAwMDdERDBBOSAvKiBQYWludEZyZXF1ZW5jeVRyYWNrZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTA4ODUwNjdGMTFEQTA0NUIwMDE4MkI5OCAvKiBQYWludEluZm8uaCBpbiBIZWFkZXJzICovLAog
CQkJCTA4ODUwNjgwMTFEQTA0NUIwMDE4MkI5OCAvKiBQYWludFBoYXNlLmggaW4gSGVhZGVycyAq
LywKIAkJCQlBODBFNkNGQjBBMTk4OUNBMDA3RkI4QzUgLyogUGFpci5oIGluIEhlYWRlcnMgKi8s
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUGFpbnRGcmVxdWVuY3lUcmFja2VyLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1BhaW50RnJlcXVlbmN5VHJh
Y2tlci5oCShub25leGlzdGVudCkKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9QYWludEZy
ZXF1ZW5jeVRyYWNrZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEwNyBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMg
SVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKKy8vIFRoaXMgY2xhc3MgaXMgdXNlZCB0byBkZXRlY3Qgd2hl
biB3ZSBhcmUgcGFpbnRpbmcgZnJlcXVlbnRseSBzbyB0aGF0IC0gZXZlbiBpbiBhIHBhaW50aW5n
IG1vZGVsCisvLyB3aXRob3V0IGRpc3BsYXkgbGlzdHMgLSB3ZSBjYW4gYnVpbGQgYW5kIGNhY2hl
IHBvcnRpb25zIG9mIGRpc3BsYXkgbGlzdHMgYW5kIHJldXNlIHRoZW0gb25seSB3aGVuCisvLyBh
bmltYXRpbmcuIE9uY2Ugd2UgdHJhbnNpdGlvbiBmdWxseSB0byBkaXNwbGF5IGxpc3RzLCB3ZSBj
YW4gcHJvYmFibHkganVzdCBwdWxsIGZyb20gdGhlIHByZXZpb3VzCisvLyBwYWludCdzIGRpc3Bs
YXkgbGlzdCBpZiBpdCBpcyBzdGlsbCBhcm91bmQgYW5kIGdldCByaWQgb2YgdGhpcyBjb2RlLgor
Y2xhc3MgUGFpbnRGcmVxdWVuY3lUcmFja2VyIHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRF
RDsKKworcHVibGljOgorICAgIFBhaW50RnJlcXVlbmN5VHJhY2tlcigpID0gZGVmYXVsdDsKKwor
ICAgIHZvaWQgYmVnaW4oKQorICAgIHsKKyAgICAgICAgc3RhdGljIHVuc2lnbmVkIHBhaW50RnJl
cXVlbmN5UGFpbnRDb3VudFRocmVzaG9sZCA9IDMwOworICAgICAgICBzdGF0aWMgU2Vjb25kcyBw
YWludEZyZXF1ZW5jeVRpbWVQZXJGcmFtZVRocmVzaG9sZCA9IDMyX21zOworICAgICAgICBzdGF0
aWMgU2Vjb25kcyBwYWludEZyZXF1ZW5jeVNlY29uZHNJZGxlVGhyZXNob2xkID0gNV9zOworCisg
ICAgICAgIC8vIFN0YXJ0IGJ5IGFzc3VtaW5nIHRoZSBwYWludCBmcmVxdWVuY3kgaXMgbG93Cisg
ICAgICAgIG1fcGFpbnRGcmVxdWVuY3kgPSBQYWludEZyZXF1ZW5jeTo6TG93OworCisgICAgICAg
IE1vbm90b25pY1RpbWUgbm93ID0gTW9ub3RvbmljVGltZTo6bm93KCk7CisgICAgICAgIGlmICgh
bV9maXJzdFBhaW50VGltZSkgeworICAgICAgICAgICAgLy8gSGFuZGxlIHRoZSBmaXJzdCB0aW1l
IHRoaXMgbWV0aG9kIGlzIGNhbGxlZC4KKyAgICAgICAgICAgIG1fZmlyc3RQYWludFRpbWUgPSBu
b3c7CisgICAgICAgIH0gZWxzZSBpZiAobm93IC0gbV9sYXN0UGFpbnRUaW1lID4gcGFpbnRGcmVx
dWVuY3lTZWNvbmRzSWRsZVRocmVzaG9sZCkgeworICAgICAgICAgICAgLy8gSXQgaGFzIGJlZW4g
NSBzZWNvbmRzIHNpbmNlIGxhc3QgdGltZSB3ZSBkcmF3IHRoaXMgcmVuZGVyZXIuIFJlc2V0IHRo
ZSBzdGF0ZQorICAgICAgICAgICAgLy8gb2YgdGhpcyBvYmplY3QgYXMgaWYsIHdlJ3ZlIGp1c3Qg
c3RhcnRlZCB0cmFja2luZyB0aGUgcGFpbnQgZnJlcXVlbmN5LgorICAgICAgICAgICAgbV9maXJz
dFBhaW50VGltZSA9IG5vdzsKKyAgICAgICAgICAgIG1fdG90YWxQYWludHMgPSAwOworICAgICAg
ICB9IGVsc2UgaWYgKG1fdG90YWxQYWludHMgPj0gcGFpbnRGcmVxdWVuY3lQYWludENvdW50VGhy
ZXNob2xkICYmICgobV9sYXN0UGFpbnRUaW1lIC0gbV9maXJzdFBhaW50VGltZSkgLyBtX3RvdGFs
UGFpbnRzKSA8PSBwYWludEZyZXF1ZW5jeVRpbWVQZXJGcmFtZVRocmVzaG9sZCkgeworICAgICAg
ICAgICAgLy8gQ2hhbmdlIHRoZSBwYWludCBmcmVxdWVuY3kgdG8gYmUgaGlnaCBvbmx5IGlmOgor
ICAgICAgICAgICAgLy8gIC0gVGhpcyByZW5kZXJlciBoYXMgYmVlbiBwYWludGVkIGF0IGxlYXN0
IDMwIHRpbWVzLgorICAgICAgICAgICAgLy8gIC0gVGhlIGZyYW1lIHJhdGUgdG8gcGFpbnQgdGhp
cyByZW5kZXJlciBoYXMgYmVlbiBhdCBsZWFzdCAzMS4yNSBGUFMuCisgICAgICAgICAgICBtX3Bh
aW50RnJlcXVlbmN5ID0gUGFpbnRGcmVxdWVuY3k6OkhpZ2g7CisgICAgICAgIH0KKyAgICB9CisK
KyAgICB2b2lkIGVuZCgpCisgICAgeworICAgICAgICBtX2xhc3RQYWludFRpbWUgPSBNb25vdG9u
aWNUaW1lOjpub3coKTsKKyAgICAgICAgQVNTRVJUKG1fZmlyc3RQYWludFRpbWUpOworICAgICAg
ICBBU1NFUlQobV9maXJzdFBhaW50VGltZSA8PSBtX2xhc3RQYWludFRpbWUpOworICAgICAgICAr
K21fdG90YWxQYWludHM7CisgICAgfQorCisgICAgYm9vbCBwYWludGluZ0ZyZXF1ZW50bHkoKSBj
b25zdCB7IHJldHVybiBtX3BhaW50RnJlcXVlbmN5ID09IFBhaW50RnJlcXVlbmN5OjpIaWdoOyB9
CisKK3ByaXZhdGU6CisgICAgTW9ub3RvbmljVGltZSBtX2ZpcnN0UGFpbnRUaW1lOworICAgIE1v
bm90b25pY1RpbWUgbV9sYXN0UGFpbnRUaW1lOworICAgIHVuc2lnbmVkIG1fdG90YWxQYWludHMg
eyAwIH07CisKKyAgICBlbnVtIGNsYXNzIFBhaW50RnJlcXVlbmN5IHsgTG93LCBIaWdoIH07Cisg
ICAgUGFpbnRGcmVxdWVuY3kgbV9wYWludEZyZXF1ZW5jeSB7IFBhaW50RnJlcXVlbmN5OjpMb3cg
fTsKK307CisKK2NsYXNzIFNpbmdsZVBhaW50RnJlcXVlbmN5VHJhY2tpbmcgeworICAgIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIFNpbmdsZVBhaW50RnJlcXVlbmN5VHJh
Y2tpbmcoUGFpbnRGcmVxdWVuY3lUcmFja2VyJiBwYWludEZyZXF1ZW5jeVRyYWNrZXIsIGJvb2wg
dHJhY2sgPSB0cnVlKQorICAgICAgICA6IG1fcGFpbnRGcmVxdWVuY3lUcmFja2VyKHBhaW50RnJl
cXVlbmN5VHJhY2tlcikKKyAgICAgICAgLCBtX3RyYWNrKHRyYWNrKQorICAgIHsKKyAgICAgICAg
aWYgKG1fdHJhY2spCisgICAgICAgICAgICBtX3BhaW50RnJlcXVlbmN5VHJhY2tlci5iZWdpbigp
OworICAgIH0KKworICAgIH5TaW5nbGVQYWludEZyZXF1ZW5jeVRyYWNraW5nKCkKKyAgICB7Cisg
ICAgICAgIGlmIChtX3RyYWNrKQorICAgICAgICAgICAgbV9wYWludEZyZXF1ZW5jeVRyYWNrZXIu
ZW5kKCk7CisgICAgfQorCitwcml2YXRlOgorICAgIFBhaW50RnJlcXVlbmN5VHJhY2tlciYgbV9w
YWludEZyZXF1ZW5jeVRyYWNrZXI7CisgICAgYm9vbCBtX3RyYWNrOworfTsKKworfQpJbmRleDog
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCShyZXZpc2lvbiAyMzAyNjgp
CisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xMzQsNjUgKzEzNCwxMCBAQAogCiAjZGVmaW5lIE1JTl9JTlRFUlNFQ1RfRk9SX1JF
VkVBTCAzMgogCi1jb25zdCBTZWNvbmRzIHBhaW50RnJlcXVlbmN5VGltZVBlckZyYW1lVGhyZXNo
b2xkID0gMzJfbXM7Ci1jb25zdCBTZWNvbmRzIHBhaW50RnJlcXVlbmN5U2Vjb25kc0lkbGVUaHJl
c2hvbGQgPSA1X3M7Ci0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEhU
TUxOYW1lczsKIAotLy8gVGhpcyBjbGFzcyBpcyB1c2VkIHRvIGRldGVjdCB3aGVuIHdlIGFyZSBw
YWludGluZyBmcmVxdWVudGx5IHNvIHRoYXQgLSBldmVuIGluIGEgcGFpbnRpbmcgbW9kZWwKLS8v
IHdpdGhvdXQgZGlzcGxheSBsaXN0cyAtIHdlIGNhbiBidWlsZCBhbmQgY2FjaGUgcG9ydGlvbnMg
b2YgZGlzcGxheSBsaXN0cyBhbmQgcmV1c2UgdGhlbSBvbmx5IHdoZW4KLS8vIGFuaW1hdGluZy4g
T25jZSB3ZSB0cmFuc2l0aW9uIGZ1bGx5IHRvIGRpc3BsYXkgbGlzdHMsIHdlIGNhbiBwcm9iYWJs
eSBqdXN0IHB1bGwgZnJvbSB0aGUgcHJldmlvdXMKLS8vIHBhaW50J3MgZGlzcGxheSBsaXN0IGlm
IGl0IGlzIHN0aWxsIGFyb3VuZCBhbmQgZ2V0IHJpZCBvZiB0aGlzIGNvZGUuCi1jbGFzcyBQYWlu
dEZyZXF1ZW5jeUluZm8gewotICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotICAgIAotcHVi
bGljOgotICAgIFBhaW50RnJlcXVlbmN5SW5mbyhNb25vdG9uaWNUaW1lIG5vdykKLSAgICAgICAg
OiBtX2ZpcnN0UGFpbnRUaW1lKG5vdykKLSAgICAgICAgLCBtX2xhc3RQYWludFRpbWUobm93KQot
ICAgIHsgfQotCi0gICAgZW51bSBQYWludEZyZXF1ZW5jeSB7IElkbGUsIExvdywgSGlnaCB9Owot
ICAgIFBhaW50RnJlcXVlbmN5IHVwZGF0ZVBhaW50RnJlcXVlbmN5KCk7Ci0gICAgCi0gICAgdm9p
ZCBwYWludGluZ0NhY2hlYWJsZVJlc291cmNlKE1vbm90b25pY1RpbWUpOwotICAgIHZvaWQgc2V0
UGFpbnRlZENhY2hlYWJsZVJlc291cmNlKGJvb2wgcGFpbnRlZCkgeyBtX3BhaW50ZWRDYWNoZWFi
bGVSZXNvdXJjZSA9IHBhaW50ZWQ7IH0KLQotICAgIGJvb2wgcGFpbnRpbmdGcmVxdWVudGx5KCkg
Y29uc3QgeyByZXR1cm4gbV9wYWludGluZ0ZyZXF1ZW50bHk7IH0KLQotcHJpdmF0ZToKLSAgICBN
b25vdG9uaWNUaW1lIG1fZmlyc3RQYWludFRpbWU7Ci0gICAgTW9ub3RvbmljVGltZSBtX2xhc3RQ
YWludFRpbWU7Ci0gICAgdW5zaWduZWQgbV90b3RhbFBhaW50cyB7IDEgfTsKLSAgICBib29sIG1f
cGFpbnRlZENhY2hlYWJsZVJlc291cmNlIHsgZmFsc2UgfTsKLSAgICBib29sIG1fcGFpbnRpbmdG
cmVxdWVudGx5IHsgZmFsc2UgfTsKLX07Ci0KLVBhaW50RnJlcXVlbmN5SW5mbzo6UGFpbnRGcmVx
dWVuY3kgUGFpbnRGcmVxdWVuY3lJbmZvOjp1cGRhdGVQYWludEZyZXF1ZW5jeSgpCi17Ci0gICAg
TW9ub3RvbmljVGltZSBub3cgPSBNb25vdG9uaWNUaW1lOjpub3coKTsgLy8gRklYTUU6IFNob3Vs
ZCBoYXZlIGEgc2luZ2xlIHRpbWUgZm9yIHRoZSBwYWludCBvZiB0aGUgd2hvbGUgZnJhbWUuCi0g
ICAgaWYgKChub3cgLSBtX2xhc3RQYWludFRpbWUpID4gcGFpbnRGcmVxdWVuY3lTZWNvbmRzSWRs
ZVRocmVzaG9sZCkKLSAgICAgICAgcmV0dXJuIElkbGU7Ci0gICAgaWYgKG1fdG90YWxQYWludHMg
JiYgKChub3cgLSBtX2ZpcnN0UGFpbnRUaW1lKSAvIG1fdG90YWxQYWludHMpIDw9IHBhaW50RnJl
cXVlbmN5VGltZVBlckZyYW1lVGhyZXNob2xkKSB7Ci0gICAgICAgIG1fcGFpbnRpbmdGcmVxdWVu
dGx5ID0gdHJ1ZTsKLSAgICAgICAgcmV0dXJuIEhpZ2g7Ci0gICAgfQotICAgIG1fcGFpbnRpbmdG
cmVxdWVudGx5ID0gZmFsc2U7Ci0gICAgcmV0dXJuIExvdzsKLX0KLQotdm9pZCBQYWludEZyZXF1
ZW5jeUluZm86OnBhaW50aW5nQ2FjaGVhYmxlUmVzb3VyY2UoTW9ub3RvbmljVGltZSBub3cpCi17
Ci0gICAgaWYgKG1fcGFpbnRlZENhY2hlYWJsZVJlc291cmNlKQotICAgICAgICByZXR1cm47Ci0g
ICAgCi0gICAgbV9wYWludGVkQ2FjaGVhYmxlUmVzb3VyY2UgPSB0cnVlOwotICAgIG1fbGFzdFBh
aW50VGltZSA9IG5vdzsKLSAgICBtX3RvdGFsUGFpbnRzKys7Ci19Ci0KIGNsYXNzIENsaXBSZWN0
cyA6IHB1YmxpYyBSZWZDb3VudGVkPENsaXBSZWN0cz4gewogICAgIFdURl9NQUtFX0ZBU1RfQUxM
T0NBVEVEOwogcHVibGljOgpAQCAtNDM1MSw5ICs0Mjk2LDggQEAgdm9pZCBSZW5kZXJMYXllcjo6
cGFpbnRMYXllckNvbnRlbnRzKEdyYQogCiAgICAgYm9vbCBzZWxlY3Rpb25BbmRCYWNrZ3JvdW5k
c09ubHkgPSBwYWludGluZ0luZm8ucGFpbnRCZWhhdmlvciAmIFBhaW50QmVoYXZpb3JTZWxlY3Rp
b25BbmRCYWNrZ3JvdW5kc09ubHk7CiAgICAgYm9vbCBzZWxlY3Rpb25Pbmx5ID0gcGFpbnRpbmdJ
bmZvLnBhaW50QmVoYXZpb3IgJiBQYWludEJlaGF2aW9yU2VsZWN0aW9uT25seTsKLSAgICAKLSAg
ICBpZiAoc2hvdWxkUGFpbnRDb250ZW50ICYmIG1fcGFpbnRGcmVxdWVuY3lJbmZvICYmIG1fcGFp
bnRGcmVxdWVuY3lJbmZvLT51cGRhdGVQYWludEZyZXF1ZW5jeSgpID09IFBhaW50RnJlcXVlbmN5
SW5mbzo6UGFpbnRGcmVxdWVuY3k6OklkbGUpCi0gICAgICAgIGNsZWFyUGFpbnRGcmVxdWVuY3lJ
bmZvKCk7CisKKyAgICBTaW5nbGVQYWludEZyZXF1ZW5jeVRyYWNraW5nIHNpbmdsZVBhaW50RnJl
cXVlbmN5VHJhY2tpbmcobV9wYWludEZyZXF1ZW5jeVRyYWNrZXIsIHNob3VsZFBhaW50Q29udGVu
dCk7CiAKICAgICBMYXllckZyYWdtZW50cyBsYXllckZyYWdtZW50czsKICAgICBSZW5kZXJPYmpl
Y3QqIHN1YnRyZWVQYWludFJvb3RGb3JSZW5kZXJlciA9IG51bGxwdHI7CkBAIC02ODc2LDI4ICs2
ODIwLDYgQEAgUmVuZGVyU3R5bGUgUmVuZGVyTGF5ZXI6OmNyZWF0ZVJlZmxlY3RpbwogICAgIHJl
dHVybiBuZXdTdHlsZTsKIH0KIAotYm9vbCBSZW5kZXJMYXllcjo6cGFpbnRpbmdGcmVxdWVudGx5
KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9wYWludEZyZXF1ZW5jeUluZm8gJiYgbV9wYWludEZy
ZXF1ZW5jeUluZm8tPnBhaW50aW5nRnJlcXVlbnRseSgpOwotfQotCi12b2lkIFJlbmRlckxheWVy
OjpzaW11bGF0ZUZyZXF1ZW50UGFpbnQoKQotewotICAgIGF1dG8gbm93ID0gTW9ub3RvbmljVGlt
ZTo6bm93KCk7Ci0gICAgaWYgKCFtX3BhaW50RnJlcXVlbmN5SW5mbykKLSAgICAgICAgbV9wYWlu
dEZyZXF1ZW5jeUluZm8gPSBzdGQ6Om1ha2VfdW5pcXVlPFBhaW50RnJlcXVlbmN5SW5mbz4obm93
KTsKLSAgICBlbHNlIHsKLSAgICAgICAgbV9wYWludEZyZXF1ZW5jeUluZm8tPnBhaW50aW5nQ2Fj
aGVhYmxlUmVzb3VyY2Uobm93KTsKLSAgICAgICAgbV9wYWludEZyZXF1ZW5jeUluZm8tPnNldFBh
aW50ZWRDYWNoZWFibGVSZXNvdXJjZShmYWxzZSk7Ci0gICAgICAgIG1fcGFpbnRGcmVxdWVuY3lJ
bmZvLT51cGRhdGVQYWludEZyZXF1ZW5jeSgpOwotICAgIH0KLX0KLQotdm9pZCBSZW5kZXJMYXll
cjo6Y2xlYXJQYWludEZyZXF1ZW5jeUluZm8oKQotewotICAgIG1fcGFpbnRGcmVxdWVuY3lJbmZv
ID0gbnVsbHB0cjsKLX0KLQogdm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlT3JSZW1vdmVGaWx0ZXJD
bGllbnRzKCkKIHsKICAgICBpZiAoIWhhc0ZpbHRlcigpKSB7CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaAkocmV2aXNpb24gMjMwMjY4KQorKysgU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDYgKzQ2LDcg
QEAKICNpbmNsdWRlICJDbGlwUmVjdC5oIgogI2luY2x1ZGUgIkdyYXBoaWNzTGF5ZXIuaCIKICNp
bmNsdWRlICJMYXllckZyYWdtZW50LmgiCisjaW5jbHVkZSAiUGFpbnRGcmVxdWVuY3lUcmFja2Vy
LmgiCiAjaW5jbHVkZSAiUGFpbnRJbmZvLmgiCiAjaW5jbHVkZSAiUmVuZGVyQm94LmgiCiAjaW5j
bHVkZSAiUmVuZGVyUHRyLmgiCkBAIC02Niw3ICs2Nyw2IEBAIGNsYXNzIEZpbHRlck9wZXJhdGlv
bnM7CiBjbGFzcyBIaXRUZXN0UmVxdWVzdDsKIGNsYXNzIEhpdFRlc3RSZXN1bHQ7CiBjbGFzcyBI
aXRUZXN0aW5nVHJhbnNmb3JtU3RhdGU7Ci1jbGFzcyBQYWludEZyZXF1ZW5jeUluZm87CiBjbGFz
cyBSZW5kZXJGcmFnbWVudGVkRmxvdzsKIGNsYXNzIFJlbmRlckdlb21ldHJ5TWFwOwogY2xhc3Mg
UmVuZGVyTGF5ZXJCYWNraW5nOwpAQCAtNzEzLDkgKzcxMyw4IEBAIHB1YmxpYzoKIAogICAgIGJv
b2wgc2hvdWxkUGxhY2VCbG9ja0RpcmVjdGlvblNjcm9sbGJhck9uTGVmdCgpIGNvbnN0IGZpbmFs
IHsgcmV0dXJuIHJlbmRlcmVyKCkuc2hvdWxkUGxhY2VCbG9ja0RpcmVjdGlvblNjcm9sbGJhck9u
TGVmdCgpOyB9CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNpbXVsYXRlRnJlcXVlbnRQYWlu
dCgpOwotICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgcGFpbnRpbmdGcmVxdWVudGx5KCkgY29uc3Q7
Ci0gICAgdm9pZCBjbGVhclBhaW50RnJlcXVlbmN5SW5mbygpOworICAgIHZvaWQgc2ltdWxhdGVG
cmVxdWVudFBhaW50KCkgeyBTaW5nbGVQYWludEZyZXF1ZW5jeVRyYWNraW5nIHsgbV9wYWludEZy
ZXF1ZW5jeVRyYWNrZXIgfTsgfQorICAgIGJvb2wgcGFpbnRpbmdGcmVxdWVudGx5KCkgY29uc3Qg
eyByZXR1cm4gbV9wYWludEZyZXF1ZW5jeVRyYWNrZXIucGFpbnRpbmdGcmVxdWVudGx5KCk7IH0K
IAogcHJpdmF0ZToKICAgICBlbnVtIENvbGxlY3RMYXllcnNCZWhhdmlvciB7IFN0b3BBdFN0YWNr
aW5nQ29udGV4dHMsIFN0b3BBdFN0YWNraW5nQ29udGFpbmVycyB9OwpAQCAtMTE3MCw3ICsxMTY5
LDcgQEAgcHJpdmF0ZToKIAogICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJMYXllckJhY2tpbmc+
IG1fYmFja2luZzsKICAgICAKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8UGFpbnRGcmVxdWVuY3lJbmZv
PiBtX3BhaW50RnJlcXVlbmN5SW5mbzsKKyAgICBQYWludEZyZXF1ZW5jeVRyYWNrZXIgbV9wYWlu
dEZyZXF1ZW5jeVRyYWNrZXI7CiB9OwogCiBpbmxpbmUgdm9pZCBSZW5kZXJMYXllcjo6Y2xlYXJa
T3JkZXJMaXN0cygpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>