<?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>190617</bug_id>
          
          <creation_ts>2018-10-16 08:18:17 -0700</creation_ts>
          <short_desc>Replace HistoryItem* with HistoryItem&amp; where possible</short_desc>
          <delta_ts>2018-10-16 08:59:23 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>cdumez</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1469700</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-16 08:18:17 -0700</bug_when>
    <thetext>Replace HistoryItem* with HistoryItem&amp; where possible</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469705</commentid>
    <comment_count>1</comment_count>
      <attachid>352452</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-16 08:22:01 -0700</bug_when>
    <thetext>Created attachment 352452
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469708</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-10-16 08:25:18 -0700</bug_when>
    <thetext>Attachment 352452 did not pass style-queue:


ERROR: Source/WebKitLegacy/win/BackForwardList.cpp:104:  Multi line control clauses should use braces.  [whitespace/braces] [4]
Total errors found: 1 in 24 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>1469728</commentid>
    <comment_count>3</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-16 08:58:26 -0700</bug_when>
    <thetext>http://trac.webkit.org/r237184</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469729</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-10-16 08:59:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/45307489&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352452</attachid>
            <date>2018-10-16 08:22:01 -0700</date>
            <delta_ts>2018-10-16 08:45:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190617-20181016082200.patch</filename>
            <type>text/plain</type>
            <size>24283</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzNzE1NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQyIEBACisyMDE4LTEwLTE2ICBBbGV4IENo
cmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmVwbGFjZSBI
aXN0b3J5SXRlbSogd2l0aCBIaXN0b3J5SXRlbSYgd2hlcmUgcG9zc2libGUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDYxNworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaGlzdG9yeS9CYWNrRm9yd2Fy
ZENsaWVudC5oOgorICAgICAgICAqIGhpc3RvcnkvQmFja0ZvcndhcmRDb250cm9sbGVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkJhY2tGb3J3YXJkQ29udHJvbGxlcjo6c2V0Q3VycmVudEl0ZW0p
OgorICAgICAgICAqIGhpc3RvcnkvQmFja0ZvcndhcmRDb250cm9sbGVyLmg6CisgICAgICAgICog
aGlzdG9yeS9IaXN0b3J5SXRlbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpkZWZhdWx0Tm90aWZ5
SGlzdG9yeUl0ZW1DaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6Okhpc3RvcnlJdGVtOjpzZXRB
bHRlcm5hdGVUaXRsZSk6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5SXRlbTo6c2V0VVJMU3Ry
aW5nKToKKyAgICAgICAgKFdlYkNvcmU6Okhpc3RvcnlJdGVtOjpzZXRPcmlnaW5hbFVSTFN0cmlu
Zyk6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5SXRlbTo6c2V0UmVmZXJyZXIpOgorICAgICAg
ICAoV2ViQ29yZTo6SGlzdG9yeUl0ZW06OnNldFRpdGxlKToKKyAgICAgICAgKFdlYkNvcmU6Okhp
c3RvcnlJdGVtOjpzZXRUYXJnZXQpOgorICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeUl0ZW06OnNl
dFNob3VsZFJlc3RvcmVTY3JvbGxQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5
SXRlbTo6c2V0U3RhdGVPYmplY3QpOgorICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeUl0ZW06Om5v
dGlmeUNoYW5nZWQpOgorICAgICAgICAqIGhpc3RvcnkvSGlzdG9yeUl0ZW0uaDoKKyAgICAgICAg
KiBsb2FkZXIvRW1wdHlDbGllbnRzLmNwcDoKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmNoZWNrTG9hZENvbXBsZXRlRm9y
VGhpc0ZyYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpjb250aW51ZUxvYWRB
ZnRlck5hdmlnYXRpb25Qb2xpY3kpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6Omxv
YWRTYW1lRG9jdW1lbnRJdGVtKToKKyAgICAgICAgKiBsb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeUNvbnRyb2xsZXI6OmdvVG9JdGVtKToKKyAg
ICAgICAgKFdlYkNvcmU6Okhpc3RvcnlDb250cm9sbGVyOjp1cGRhdGVGb3JDb21taXQpOgorICAg
ICAgICAoV2ViQ29yZTo6SGlzdG9yeUNvbnRyb2xsZXI6OnJlY3Vyc2l2ZVVwZGF0ZUZvckNvbW1p
dCk6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVjdXJzaXZlVXBkYXRl
Rm9yU2FtZURvY3VtZW50TmF2aWdhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29u
dHJvbGxlcjo6c2V0Q3VycmVudEl0ZW0pOgorICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeUNvbnRy
b2xsZXI6OmNyZWF0ZUl0ZW0pOgorICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeUNvbnRyb2xsZXI6
Oml0ZW1zQXJlQ2xvbmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6Okhpc3RvcnlDb250cm9s
bGVyOjpjdXJyZW50RnJhbWVzTWF0Y2hJdGVtIGNvbnN0KToKKyAgICAgICAgKiBsb2FkZXIvSGlz
dG9yeUNvbnRyb2xsZXIuaDoKKwogMjAxOC0xMC0xNSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJp
c3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIE1vZGVybml6ZSBCYWNrRm9yd2FyZENsaWVu
dC5oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9oaXN0b3J5L0JhY2tGb3J3YXJkQ2xpZW50LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaGlzdG9yeS9CYWNrRm9yd2FyZENsaWVudC5oCShy
ZXZpc2lvbiAyMzcxNTcpCisrKyBTb3VyY2UvV2ViQ29yZS9oaXN0b3J5L0JhY2tGb3J3YXJkQ2xp
ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTQyLDcgKzQyLDcgQEAgcHVibGljOiAKIAogICAgIHZp
cnR1YWwgdm9pZCBhZGRJdGVtKFJlZjxIaXN0b3J5SXRlbT4mJikgPSAwOwogCi0gICAgdmlydHVh
bCB2b2lkIGdvVG9JdGVtKEhpc3RvcnlJdGVtKikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBnb1Rv
SXRlbShIaXN0b3J5SXRlbSYpID0gMDsKICAgICAgICAgCiAgICAgdmlydHVhbCBIaXN0b3J5SXRl
bSogaXRlbUF0SW5kZXgoaW50KSA9IDA7CiAgICAgdmlydHVhbCBpbnQgYmFja0xpc3RDb3VudCgp
IGNvbnN0ID0gMDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2hpc3RvcnkvQmFja0ZvcndhcmRDb250
cm9sbGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9oaXN0b3J5L0JhY2tGb3J3
YXJkQ29udHJvbGxlci5jcHAJKHJldmlzaW9uIDIzNzE0OCkKKysrIFNvdXJjZS9XZWJDb3JlL2hp
c3RvcnkvQmFja0ZvcndhcmRDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTgsNyAr
OTgsNyBAQCB2b2lkIEJhY2tGb3J3YXJkQ29udHJvbGxlcjo6YWRkSXRlbShSZWY8CiAgICAgbV9j
bGllbnQtPmFkZEl0ZW0oV1RGTW92ZShpdGVtKSk7CiB9CiAKLXZvaWQgQmFja0ZvcndhcmRDb250
cm9sbGVyOjpzZXRDdXJyZW50SXRlbShIaXN0b3J5SXRlbSogaXRlbSkKK3ZvaWQgQmFja0Zvcndh
cmRDb250cm9sbGVyOjpzZXRDdXJyZW50SXRlbShIaXN0b3J5SXRlbSYgaXRlbSkKIHsKICAgICBt
X2NsaWVudC0+Z29Ub0l0ZW0oaXRlbSk7CiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9oaXN0b3J5
L0JhY2tGb3J3YXJkQ29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2hp
c3RvcnkvQmFja0ZvcndhcmRDb250cm9sbGVyLmgJKHJldmlzaW9uIDIzNzE1NykKKysrIFNvdXJj
ZS9XZWJDb3JlL2hpc3RvcnkvQmFja0ZvcndhcmRDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkK
QEAgLTUxLDcgKzUxLDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgZ29Gb3J3
YXJkKCk7CiAKICAgICB2b2lkIGFkZEl0ZW0oUmVmPEhpc3RvcnlJdGVtPiYmKTsKLSAgICB2b2lk
IHNldEN1cnJlbnRJdGVtKEhpc3RvcnlJdGVtKik7CisgICAgdm9pZCBzZXRDdXJyZW50SXRlbShI
aXN0b3J5SXRlbSYpOwogICAgICAgICAKICAgICBpbnQgY291bnQoKSBjb25zdDsKICAgICBXRUJD
T1JFX0VYUE9SVCBpbnQgYmFja0NvdW50KCkgY29uc3Q7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9o
aXN0b3J5L0hpc3RvcnlJdGVtLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9oaXN0
b3J5L0hpc3RvcnlJdGVtLmNwcAkocmV2aXNpb24gMjM3MTQ4KQorKysgU291cmNlL1dlYkNvcmUv
aGlzdG9yeS9IaXN0b3J5SXRlbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDExICs0OSwxMSBA
QCBpbnQ2NF90IEhpc3RvcnlJdGVtOjpnZW5lcmF0ZVNlcXVlbmNlTnVtCiAgICAgcmV0dXJuICsr
bmV4dDsKIH0KIAotc3RhdGljIHZvaWQgZGVmYXVsdE5vdGlmeUhpc3RvcnlJdGVtQ2hhbmdlZChI
aXN0b3J5SXRlbSopCitzdGF0aWMgdm9pZCBkZWZhdWx0Tm90aWZ5SGlzdG9yeUl0ZW1DaGFuZ2Vk
KEhpc3RvcnlJdGVtJikKIHsKIH0KIAotV0VCQ09SRV9FWFBPUlQgdm9pZCAoKm5vdGlmeUhpc3Rv
cnlJdGVtQ2hhbmdlZCkoSGlzdG9yeUl0ZW0qKSA9IGRlZmF1bHROb3RpZnlIaXN0b3J5SXRlbUNo
YW5nZWQ7Cit2b2lkICgqbm90aWZ5SGlzdG9yeUl0ZW1DaGFuZ2VkKShIaXN0b3J5SXRlbSYpID0g
ZGVmYXVsdE5vdGlmeUhpc3RvcnlJdGVtQ2hhbmdlZDsKIAogSGlzdG9yeUl0ZW06Okhpc3RvcnlJ
dGVtKCkKICAgICA6IEhpc3RvcnlJdGVtKHsgfSwgeyB9KQpAQCAtMTk1LDEzICsxOTUsMTMgQEAg
Y29uc3QgU3RyaW5nJiBIaXN0b3J5SXRlbTo6dGFyZ2V0KCkgY29ucwogdm9pZCBIaXN0b3J5SXRl
bTo6c2V0QWx0ZXJuYXRlVGl0bGUoY29uc3QgU3RyaW5nJiBhbHRlcm5hdGVUaXRsZSkKIHsKICAg
ICBtX2Rpc3BsYXlUaXRsZSA9IGFsdGVybmF0ZVRpdGxlOwotICAgIG5vdGlmeUhpc3RvcnlJdGVt
Q2hhbmdlZCh0aGlzKTsKKyAgICBub3RpZnlDaGFuZ2VkKCk7CiB9CiAKIHZvaWQgSGlzdG9yeUl0
ZW06OnNldFVSTFN0cmluZyhjb25zdCBTdHJpbmcmIHVybFN0cmluZykKIHsKICAgICBtX3VybFN0
cmluZyA9IHVybFN0cmluZzsKLSAgICBub3RpZnlIaXN0b3J5SXRlbUNoYW5nZWQodGhpcyk7Cisg
ICAgbm90aWZ5Q2hhbmdlZCgpOwogfQogCiB2b2lkIEhpc3RvcnlJdGVtOjpzZXRVUkwoY29uc3Qg
VVJMJiB1cmwpCkBAIC0yMTQsMjUgKzIxNCwyNSBAQCB2b2lkIEhpc3RvcnlJdGVtOjpzZXRVUkwo
Y29uc3QgVVJMJiB1cmwpCiB2b2lkIEhpc3RvcnlJdGVtOjpzZXRPcmlnaW5hbFVSTFN0cmluZyhj
b25zdCBTdHJpbmcmIHVybFN0cmluZykKIHsKICAgICBtX29yaWdpbmFsVVJMU3RyaW5nID0gdXJs
U3RyaW5nOwotICAgIG5vdGlmeUhpc3RvcnlJdGVtQ2hhbmdlZCh0aGlzKTsKKyAgICBub3RpZnlD
aGFuZ2VkKCk7CiB9CiAKIHZvaWQgSGlzdG9yeUl0ZW06OnNldFJlZmVycmVyKGNvbnN0IFN0cmlu
ZyYgcmVmZXJyZXIpCiB7CiAgICAgbV9yZWZlcnJlciA9IHJlZmVycmVyOwotICAgIG5vdGlmeUhp
c3RvcnlJdGVtQ2hhbmdlZCh0aGlzKTsKKyAgICBub3RpZnlDaGFuZ2VkKCk7CiB9CiAKIHZvaWQg
SGlzdG9yeUl0ZW06OnNldFRpdGxlKGNvbnN0IFN0cmluZyYgdGl0bGUpCiB7CiAgICAgbV90aXRs
ZSA9IHRpdGxlOwotICAgIG5vdGlmeUhpc3RvcnlJdGVtQ2hhbmdlZCh0aGlzKTsKKyAgICBub3Rp
ZnlDaGFuZ2VkKCk7CiB9CiAKIHZvaWQgSGlzdG9yeUl0ZW06OnNldFRhcmdldChjb25zdCBTdHJp
bmcmIHRhcmdldCkKIHsKICAgICBtX3RhcmdldCA9IHRhcmdldDsKLSAgICBub3RpZnlIaXN0b3J5
SXRlbUNoYW5nZWQodGhpcyk7CisgICAgbm90aWZ5Q2hhbmdlZCgpOwogfQogCiBjb25zdCBJbnRQ
b2ludCYgSGlzdG9yeUl0ZW06OnNjcm9sbFBvc2l0aW9uKCkgY29uc3QKQEAgLTI1OCw3ICsyNTgs
NyBAQCBib29sIEhpc3RvcnlJdGVtOjpzaG91bGRSZXN0b3JlU2Nyb2xsUG9zCiB2b2lkIEhpc3Rv
cnlJdGVtOjpzZXRTaG91bGRSZXN0b3JlU2Nyb2xsUG9zaXRpb24oYm9vbCBzaG91bGRSZXN0b3Jl
KQogewogICAgIG1fc2hvdWxkUmVzdG9yZVNjcm9sbFBvc2l0aW9uID0gc2hvdWxkUmVzdG9yZTsK
LSAgICBub3RpZnlIaXN0b3J5SXRlbUNoYW5nZWQodGhpcyk7CisgICAgbm90aWZ5Q2hhbmdlZCgp
OwogfQogCiBmbG9hdCBIaXN0b3J5SXRlbTo6cGFnZVNjYWxlRmFjdG9yKCkgY29uc3QKQEAgLTMw
OSw3ICszMDksNyBAQCB2b2lkIEhpc3RvcnlJdGVtOjpzZXRJc1RhcmdldEl0ZW0oYm9vbCBmCiB2
b2lkIEhpc3RvcnlJdGVtOjpzZXRTdGF0ZU9iamVjdChSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZh
bHVlPiYmIG9iamVjdCkKIHsKICAgICBtX3N0YXRlT2JqZWN0ID0gV1RGTW92ZShvYmplY3QpOwot
ICAgIG5vdGlmeUhpc3RvcnlJdGVtQ2hhbmdlZCh0aGlzKTsKKyAgICBub3RpZnlDaGFuZ2VkKCk7
CiB9CiAKIHZvaWQgSGlzdG9yeUl0ZW06OmFkZENoaWxkSXRlbShSZWY8SGlzdG9yeUl0ZW0+JiYg
Y2hpbGQpCkBAIC00NjUsNyArNDY1LDcgQEAgYm9vbCBIaXN0b3J5SXRlbTo6aXNDdXJyZW50RG9j
dW1lbnQoRG9jdQogCiB2b2lkIEhpc3RvcnlJdGVtOjpub3RpZnlDaGFuZ2VkKCkKIHsKLSAgICBu
b3RpZnlIaXN0b3J5SXRlbUNoYW5nZWQodGhpcyk7CisgICAgbm90aWZ5SGlzdG9yeUl0ZW1DaGFu
Z2VkKCp0aGlzKTsKIH0KIAogI2lmbmRlZiBOREVCVUcKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2hp
c3RvcnkvSGlzdG9yeUl0ZW0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9oaXN0b3J5
L0hpc3RvcnlJdGVtLmgJKHJldmlzaW9uIDIzNzE0OCkKKysrIFNvdXJjZS9XZWJDb3JlL2hpc3Rv
cnkvSGlzdG9yeUl0ZW0uaAkod29ya2luZyBjb3B5KQpAQCAtNTcsNyArNTcsNyBAQCBjbGFzcyBS
ZXNvdXJjZVJlcXVlc3Q7CiBjbGFzcyBVUkw7CiBlbnVtIGNsYXNzIFBydW5pbmdSZWFzb247CiAK
LVdFQkNPUkVfRVhQT1JUIGV4dGVybiB2b2lkICgqbm90aWZ5SGlzdG9yeUl0ZW1DaGFuZ2VkKShI
aXN0b3J5SXRlbSopOworV0VCQ09SRV9FWFBPUlQgZXh0ZXJuIHZvaWQgKCpub3RpZnlIaXN0b3J5
SXRlbUNoYW5nZWQpKEhpc3RvcnlJdGVtJik7CiAKIGNsYXNzIEhpc3RvcnlJdGVtIDogcHVibGlj
IFJlZkNvdW50ZWQ8SGlzdG9yeUl0ZW0+IHsKICAgICBmcmllbmQgY2xhc3MgUGFnZUNhY2hlOwpJ
bmRleDogU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAJKHJldmlzaW9uIDIzNzE1
NykKKysrIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC04Myw3ICs4Myw3IEBAIGNsYXNzIFVzZXJNZXNzYWdlSGFuZGxlckRlc2NyaXB0b3I7
CiAKIGNsYXNzIEVtcHR5QmFja0ZvcndhcmRDbGllbnQgZmluYWwgOiBwdWJsaWMgQmFja0Zvcndh
cmRDbGllbnQgewogICAgIHZvaWQgYWRkSXRlbShSZWY8SGlzdG9yeUl0ZW0+JiYpIGZpbmFsIHsg
fQotICAgIHZvaWQgZ29Ub0l0ZW0oSGlzdG9yeUl0ZW0qKSBmaW5hbCB7IH0KKyAgICB2b2lkIGdv
VG9JdGVtKEhpc3RvcnlJdGVtJikgZmluYWwgeyB9CiAgICAgSGlzdG9yeUl0ZW0qIGl0ZW1BdElu
ZGV4KGludCkgZmluYWwgeyByZXR1cm4gbnVsbHB0cjsgfQogICAgIGludCBiYWNrTGlzdENvdW50
KCkgY29uc3QgZmluYWwgeyByZXR1cm4gMDsgfQogICAgIGludCBmb3J3YXJkTGlzdENvdW50KCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gMDsgfQpJbmRleDogU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zy
YW1lTG9hZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVM
b2FkZXIuY3BwCShyZXZpc2lvbiAyMzcxNDgpCisrKyBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJh
bWVMb2FkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNDM2LDcgKzI0MzYsNyBAQCB2b2lkIEZy
YW1lTG9hZGVyOjpjaGVja0xvYWRDb21wbGV0ZUZvclRoCiAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICBpZiAoc2hvdWxkUmVzZXQgJiYgaXRlbSkKICAgICAgICAgICAgICAgICBpZiAoUGFnZSog
cGFnZSA9IG1fZnJhbWUucGFnZSgpKSB7Ci0gICAgICAgICAgICAgICAgICAgIHBhZ2UtPmJhY2tG
b3J3YXJkKCkuc2V0Q3VycmVudEl0ZW0oaXRlbS5nZXQoKSk7CisgICAgICAgICAgICAgICAgICAg
IHBhZ2UtPmJhY2tGb3J3YXJkKCkuc2V0Q3VycmVudEl0ZW0oKml0ZW0pOwogICAgICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQpAQCAtMzMwMSw3ICszMzAxLDcg
QEAgdm9pZCBGcmFtZUxvYWRlcjo6Y29udGludWVMb2FkQWZ0ZXJOYXZpZwogICAgICAgICBpZiAo
KGlzVGFyZ2V0SXRlbSB8fCBtX2ZyYW1lLmlzTWFpbkZyYW1lKCkpICYmIGlzQmFja0ZvcndhcmRM
b2FkVHlwZShwb2xpY3lDaGVja2VyKCkubG9hZFR5cGUoKSkpIHsKICAgICAgICAgICAgIGlmIChQ
YWdlKiBwYWdlID0gbV9mcmFtZS5wYWdlKCkpIHsKICAgICAgICAgICAgICAgICBpZiAoSGlzdG9y
eUl0ZW0qIHJlc2V0SXRlbSA9IG1fZnJhbWUubWFpbkZyYW1lKCkubG9hZGVyKCkuaGlzdG9yeSgp
LmN1cnJlbnRJdGVtKCkpCi0gICAgICAgICAgICAgICAgICAgIHBhZ2UtPmJhY2tGb3J3YXJkKCku
c2V0Q3VycmVudEl0ZW0ocmVzZXRJdGVtKTsKKyAgICAgICAgICAgICAgICAgICAgcGFnZS0+YmFj
a0ZvcndhcmQoKS5zZXRDdXJyZW50SXRlbSgqcmVzZXRJdGVtKTsKICAgICAgICAgICAgIH0KICAg
ICAgICAgfQogICAgICAgICByZXR1cm47CkBAIC0zNTYxLDcgKzM1NjEsNyBAQCB2b2lkIEZyYW1l
TG9hZGVyOjpsb2FkU2FtZURvY3VtZW50SXRlbShICiAgICAgaWYgKEZyYW1lVmlldyogdmlldyA9
IG1fZnJhbWUudmlldygpKQogICAgICAgICB2aWV3LT5zZXRXYXNTY3JvbGxlZEJ5VXNlcihmYWxz
ZSk7CiAKLSAgICBoaXN0b3J5KCkuc2V0Q3VycmVudEl0ZW0oJml0ZW0pOworICAgIGhpc3Rvcnko
KS5zZXRDdXJyZW50SXRlbShpdGVtKTsKICAgICAgICAgCiAgICAgLy8gbG9hZEluU2FtZURvY3Vt
ZW50KCkgYWN0dWFsbHkgY2hhbmdlcyB0aGUgVVJMIGFuZCBub3RpZmllcyBsb2FkIGRlbGVnYXRl
cyBvZiBhICJmYWtlIiBsb2FkCiAgICAgbG9hZEluU2FtZURvY3VtZW50KGl0ZW0udXJsKCksIGl0
ZW0uc3RhdGVPYmplY3QoKSwgZmFsc2UpOwpJbmRleDogU291cmNlL1dlYkNvcmUvbG9hZGVyL0hp
c3RvcnlDb250cm9sbGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIv
SGlzdG9yeUNvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiAyMzcxNDgpCisrKyBTb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMTYsNyAr
MzE2LDcgQEAgdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6Z29Ub0l0ZW0oSGlzdG9yeQogICAgIC8v
IC0gcGx1cywgaXQgb25seSBtYWtlcyBzZW5zZSBmb3IgdGhlIHRvcCBsZXZlbCBvZiB0aGUgb3Bl
cmF0aW9uIHRocm91Z2ggdGhlIGZyYW1lIHRyZWUsCiAgICAgLy8gYXMgb3Bwb3NlZCB0byBoYXBw
ZW5pbmcgZm9yIHNvbWUvb25lIG9mIHRoZSBwYWdlIGNvbW1pdHMgdGhhdCBtaWdodCBoYXBwZW4g
c29vbgogICAgIFJlZlB0cjxIaXN0b3J5SXRlbT4gY3VycmVudEl0ZW0gPSBwYWdlLT5iYWNrRm9y
d2FyZCgpLmN1cnJlbnRJdGVtKCk7Ci0gICAgcGFnZS0+YmFja0ZvcndhcmQoKS5zZXRDdXJyZW50
SXRlbSgmdGFyZ2V0SXRlbSk7CisgICAgcGFnZS0+YmFja0ZvcndhcmQoKS5zZXRDdXJyZW50SXRl
bSh0YXJnZXRJdGVtKTsKIAogICAgIC8vIEZpcnN0IHNldCB0aGUgcHJvdmlzaW9uYWwgaXRlbSBv
ZiBhbnkgZnJhbWVzIHRoYXQgYXJlIG5vdCBhY3R1YWxseSBuYXZpZ2F0aW5nLgogICAgIC8vIFRo
aXMgbXVzdCBiZSBkb25lIGJlZm9yZSB0cnlpbmcgdG8gbmF2aWdhdGUgdGhlIGRlc2lyZWQgZnJh
bWUsIGJlY2F1c2Ugc29tZQpAQCAtNDg0LDcgKzQ4NCw4IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xs
ZXI6OnVwZGF0ZUZvckNvbW1pdCgKICAgICAgICAgLy8gTm90IGhhdmluZyBvbmUgbGVhZHMgdG8g
dXMgbm90IGhhdmluZyBhIG1fY3VycmVudEl0ZW0gbGF0ZXIsIHdoaWNoIGlzIGFsc28gYSB0ZXJy
aWJsZSBrbm93biBpc3N1ZS4KICAgICAgICAgLy8gV2Ugc2hvdWxkIGdldCB0byB0aGUgYm90dG9t
IG9mIHRoaXMuCiAgICAgICAgIEFTU0VSVChtX3Byb3Zpc2lvbmFsSXRlbSk7Ci0gICAgICAgIHNl
dEN1cnJlbnRJdGVtKG1fcHJvdmlzaW9uYWxJdGVtLmdldCgpKTsKKyAgICAgICAgaWYgKG1fcHJv
dmlzaW9uYWxJdGVtKQorICAgICAgICAgICAgc2V0Q3VycmVudEl0ZW0oKm1fcHJvdmlzaW9uYWxJ
dGVtLmdldCgpKTsKICAgICAgICAgbV9wcm92aXNpb25hbEl0ZW0gPSBudWxscHRyOwogCiAgICAg
ICAgIC8vIFRlbGwgYWxsIG90aGVyIGZyYW1lcyBpbiB0aGUgdHJlZSB0byBjb21taXQgdGhlaXIg
cHJvdmlzaW9uYWwgaXRlbXMgYW5kCkBAIC01MjUsNyArNTI2LDggQEAgdm9pZCBIaXN0b3J5Q29u
dHJvbGxlcjo6cmVjdXJzaXZlVXBkYXRlRgogICAgICAgICAgICAgdmlldy0+c2V0V2FzU2Nyb2xs
ZWRCeVVzZXIoZmFsc2UpOwogCiAgICAgICAgIC8vIE5vdyBjb21taXQgdGhlIHByb3Zpc2lvbmFs
IGl0ZW0KLSAgICAgICAgc2V0Q3VycmVudEl0ZW0obV9wcm92aXNpb25hbEl0ZW0uZ2V0KCkpOwor
ICAgICAgICBpZiAobV9wcm92aXNpb25hbEl0ZW0pCisgICAgICAgICAgICBzZXRDdXJyZW50SXRl
bSgqbV9wcm92aXNpb25hbEl0ZW0uZ2V0KCkpOwogICAgICAgICBtX3Byb3Zpc2lvbmFsSXRlbSA9
IG51bGxwdHI7CiAKICAgICAgICAgLy8gUmVzdG9yZSBmb3JtIHN0YXRlICh3b3JrcyBmcm9tIGN1
cnJlbnRJdGVtKQpAQCAtNTc0LDcgKzU3Niw4IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnJl
Y3Vyc2l2ZVVwZGF0ZUYKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gQ29tbWl0IHRoZSBwcm92
aXNpb25hbCBpdGVtLgotICAgIHNldEN1cnJlbnRJdGVtKG1fcHJvdmlzaW9uYWxJdGVtLmdldCgp
KTsKKyAgICBpZiAobV9wcm92aXNpb25hbEl0ZW0pCisgICAgICAgIHNldEN1cnJlbnRJdGVtKCpt
X3Byb3Zpc2lvbmFsSXRlbS5nZXQoKSk7CiAgICAgbV9wcm92aXNpb25hbEl0ZW0gPSBudWxscHRy
OwogCiAgICAgLy8gSXRlcmF0ZSBvdmVyIHRoZSByZXN0IG9mIHRoZSB0cmVlLgpAQCAtNTkwLDEx
ICs1OTMsMTEgQEAgdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6dXBkYXRlRm9yRnJhbWVMbwogICAg
IG1fZnJhbWVMb2FkQ29tcGxldGUgPSB0cnVlOwogfQogCi12b2lkIEhpc3RvcnlDb250cm9sbGVy
OjpzZXRDdXJyZW50SXRlbShIaXN0b3J5SXRlbSogaXRlbSkKK3ZvaWQgSGlzdG9yeUNvbnRyb2xs
ZXI6OnNldEN1cnJlbnRJdGVtKEhpc3RvcnlJdGVtJiBpdGVtKQogewogICAgIG1fZnJhbWVMb2Fk
Q29tcGxldGUgPSBmYWxzZTsKICAgICBtX3ByZXZpb3VzSXRlbSA9IG1fY3VycmVudEl0ZW07Ci0g
ICAgbV9jdXJyZW50SXRlbSA9IGl0ZW07CisgICAgbV9jdXJyZW50SXRlbSA9ICZpdGVtOwogfQog
CiB2b2lkIEhpc3RvcnlDb250cm9sbGVyOjpzZXRDdXJyZW50SXRlbVRpdGxlKGNvbnN0IFN0cmlu
Z1dpdGhEaXJlY3Rpb24mIHRpdGxlKQpAQCAtNjc2LDcgKzY3OSw3IEBAIFJlZjxIaXN0b3J5SXRl
bT4gSGlzdG9yeUNvbnRyb2xsZXI6OmNyZWEKICAgICBpbml0aWFsaXplSXRlbShpdGVtKTsKICAg
ICAKICAgICAvLyBTZXQgdGhlIGl0ZW0gZm9yIHdoaWNoIHdlIHdpbGwgc2F2ZSBkb2N1bWVudCBz
dGF0ZQotICAgIHNldEN1cnJlbnRJdGVtKGl0ZW0ucHRyKCkpOworICAgIHNldEN1cnJlbnRJdGVt
KGl0ZW0pOwogICAgIAogICAgIHJldHVybiBpdGVtOwogfQpAQCAtNzc1LDE3ICs3NzgsMTcgQEAg
Ym9vbCBIaXN0b3J5Q29udHJvbGxlcjo6aXRlbXNBcmVDbG9uZXMoSAogICAgIHJldHVybiBpdGVt
MgogICAgICAgICAmJiAmaXRlbTEgIT0gaXRlbTIKICAgICAgICAgJiYgaXRlbTEuaXRlbVNlcXVl
bmNlTnVtYmVyKCkgPT0gaXRlbTItPml0ZW1TZXF1ZW5jZU51bWJlcigpCi0gICAgICAgICYmIGN1
cnJlbnRGcmFtZXNNYXRjaEl0ZW0oJml0ZW0xKQorICAgICAgICAmJiBjdXJyZW50RnJhbWVzTWF0
Y2hJdGVtKGl0ZW0xKQogICAgICAgICAmJiBpdGVtMi0+aGFzU2FtZUZyYW1lcyhpdGVtMSk7CiB9
CiAKIC8vIEhlbHBlciBtZXRob2QgdGhhdCBkZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGN1cnJlbnQg
ZnJhbWUgdHJlZSBtYXRjaGVzIGdpdmVuIGhpc3RvcnkgaXRlbSdzLgotYm9vbCBIaXN0b3J5Q29u
dHJvbGxlcjo6Y3VycmVudEZyYW1lc01hdGNoSXRlbShIaXN0b3J5SXRlbSogaXRlbSkgY29uc3QK
K2Jvb2wgSGlzdG9yeUNvbnRyb2xsZXI6OmN1cnJlbnRGcmFtZXNNYXRjaEl0ZW0oSGlzdG9yeUl0
ZW0mIGl0ZW0pIGNvbnN0CiB7Ci0gICAgaWYgKCghbV9mcmFtZS50cmVlKCkudW5pcXVlTmFtZSgp
LmlzRW1wdHkoKSB8fCAhaXRlbS0+dGFyZ2V0KCkuaXNFbXB0eSgpKSAmJiBtX2ZyYW1lLnRyZWUo
KS51bmlxdWVOYW1lKCkgIT0gaXRlbS0+dGFyZ2V0KCkpCisgICAgaWYgKCghbV9mcmFtZS50cmVl
KCkudW5pcXVlTmFtZSgpLmlzRW1wdHkoKSB8fCAhaXRlbS50YXJnZXQoKS5pc0VtcHR5KCkpICYm
IG1fZnJhbWUudHJlZSgpLnVuaXF1ZU5hbWUoKSAhPSBpdGVtLnRhcmdldCgpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgICAgIAotICAgIGNvbnN0IGF1dG8mIGNoaWxkSXRlbXMgPSBpdGVt
LT5jaGlsZHJlbigpOworCisgICAgY29uc3QgYXV0byYgY2hpbGRJdGVtcyA9IGl0ZW0uY2hpbGRy
ZW4oKTsKICAgICBpZiAoY2hpbGRJdGVtcy5zaXplKCkgIT0gbV9mcmFtZS50cmVlKCkuY2hpbGRD
b3VudCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuaAkocmV2aXNpb24gMjM3MTQ4KQorKysgU291cmNl
L1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTc1
LDcgKzc1LDcgQEAgcHVibGljOgogICAgIHZvaWQgdXBkYXRlRm9yRnJhbWVMb2FkQ29tcGxldGVk
KCk7CiAKICAgICBIaXN0b3J5SXRlbSogY3VycmVudEl0ZW0oKSBjb25zdCB7IHJldHVybiBtX2N1
cnJlbnRJdGVtLmdldCgpOyB9Ci0gICAgdm9pZCBzZXRDdXJyZW50SXRlbShIaXN0b3J5SXRlbSop
OworICAgIHZvaWQgc2V0Q3VycmVudEl0ZW0oSGlzdG9yeUl0ZW0mKTsKICAgICB2b2lkIHNldEN1
cnJlbnRJdGVtVGl0bGUoY29uc3QgU3RyaW5nV2l0aERpcmVjdGlvbiYpOwogICAgIGJvb2wgY3Vy
cmVudEl0ZW1TaG91bGRCZVJlcGxhY2VkKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9p
ZCByZXBsYWNlQ3VycmVudEl0ZW0oSGlzdG9yeUl0ZW0qKTsKQEAgLTEwNyw3ICsxMDcsNyBAQCBw
cml2YXRlOgogICAgIHZvaWQgcmVjdXJzaXZlVXBkYXRlRm9yQ29tbWl0KCk7CiAgICAgdm9pZCBy
ZWN1cnNpdmVVcGRhdGVGb3JTYW1lRG9jdW1lbnROYXZpZ2F0aW9uKCk7CiAgICAgYm9vbCBpdGVt
c0FyZUNsb25lcyhIaXN0b3J5SXRlbSYsIEhpc3RvcnlJdGVtKikgY29uc3Q7Ci0gICAgYm9vbCBj
dXJyZW50RnJhbWVzTWF0Y2hJdGVtKEhpc3RvcnlJdGVtKikgY29uc3Q7CisgICAgYm9vbCBjdXJy
ZW50RnJhbWVzTWF0Y2hJdGVtKEhpc3RvcnlJdGVtJikgY29uc3Q7CiAgICAgdm9pZCB1cGRhdGVC
YWNrRm9yd2FyZExpc3RDbGlwcGVkQXRUYXJnZXQoYm9vbCBkb0NsaXApOwogICAgIHZvaWQgdXBk
YXRlQ3VycmVudEl0ZW0oKTsKIApJbmRleDogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzNzE4MCkKKysrIFNv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIw
MTgtMTAtMTYgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKwor
ICAgICAgICBSZXBsYWNlIEhpc3RvcnlJdGVtKiB3aXRoIEhpc3RvcnlJdGVtJiB3aGVyZSBwb3Nz
aWJsZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkw
NjE3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1Nlc3Npb25TdGF0ZUNvbnZlcnNpb24uaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViQmFja0ZvcndhcmRMaXN0UHJveHkuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXSzJOb3RpZnlIaXN0b3J5SXRlbUNoYW5nZWQpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJCYWNrRm9yd2FyZExpc3RQcm94eTo6Z29Ub0l0ZW0pOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJCYWNrRm9yd2FyZExpc3RQcm94eS5oOgorCiAyMDE4LTEwLTE2ICBQ
aGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmll
d2VkLCBhbm90aGVyIEdUSyBidWlsZCBmaXggYWZ0ZXIgcjIzNzE0NgpJbmRleDogU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1Nlc3Npb25TdGF0ZUNvbnZlcnNpb24uaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2Vz
c2lvblN0YXRlQ29udmVyc2lvbi5oCShyZXZpc2lvbiAyMzcxNDgpCisrKyBTb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCiAgKi8KIAotI2lmbmRlZiBTZXNzaW9uU3RhdGVDb252ZXJzaW9uX2gKLSNkZWZpbmUg
U2Vzc2lvblN0YXRlQ29udmVyc2lvbl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9G
b3J3YXJkLmg+CiAKQEAgLTM1LDExICszNCw4IEBAIGNsYXNzIEhpc3RvcnlJdGVtOwogbmFtZXNw
YWNlIFdlYktpdCB7CiAKIHN0cnVjdCBCYWNrRm9yd2FyZExpc3RJdGVtU3RhdGU7Ci1zdHJ1Y3Qg
UGFnZVN0YXRlOwogCiBCYWNrRm9yd2FyZExpc3RJdGVtU3RhdGUgdG9CYWNrRm9yd2FyZExpc3RJ
dGVtU3RhdGUoY29uc3QgV2ViQ29yZTo6SGlzdG9yeUl0ZW0mKTsKIFJlZjxXZWJDb3JlOjpIaXN0
b3J5SXRlbT4gdG9IaXN0b3J5SXRlbShjb25zdCBCYWNrRm9yd2FyZExpc3RJdGVtU3RhdGUmKTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBTZXNzaW9uU3RhdGVDb252ZXJz
aW9uX2gKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkJhY2tGb3J3
YXJkTGlzdFByb3h5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJCYWNrRm9yd2FyZExpc3RQcm94eS5jcHAJKHJldmlzaW9uIDIzNzE1NykKKysr
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkJhY2tGb3J3YXJkTGlzdFByb3h5
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjIsOSArNjIsOSBAQCB2b2lkIFdlYkJhY2tGb3J3YXJk
TGlzdFByb3h5OjphZGRJdGVtRnJvCiAgICAgaWRUb0hpc3RvcnlJdGVtTWFwKCkuc2V0KGl0ZW1J
RCwgaXRlbS5wdHIoKSk7CiB9CiAKLXN0YXRpYyB2b2lkIFdLMk5vdGlmeUhpc3RvcnlJdGVtQ2hh
bmdlZChIaXN0b3J5SXRlbSogaXRlbSkKK3N0YXRpYyB2b2lkIFdLMk5vdGlmeUhpc3RvcnlJdGVt
Q2hhbmdlZChIaXN0b3J5SXRlbSYgaXRlbSkKIHsKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJv
eHk6OlVwZGF0ZUJhY2tGb3J3YXJkSXRlbSh0b0JhY2tGb3J3YXJkTGlzdEl0ZW1TdGF0ZSgqaXRl
bSkpLCAwKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVj
dGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlVwZGF0ZUJhY2tGb3J3YXJk
SXRlbSh0b0JhY2tGb3J3YXJkTGlzdEl0ZW1TdGF0ZShpdGVtKSksIDApOwogfQogCiBIaXN0b3J5
SXRlbSogV2ViQmFja0ZvcndhcmRMaXN0UHJveHk6Oml0ZW1Gb3JJRChjb25zdCBCYWNrRm9yd2Fy
ZEl0ZW1JZGVudGlmaWVyJiBpdGVtSUQpCkBAIC0xMDAsMTMgKzEwMCwxMyBAQCB2b2lkIFdlYkJh
Y2tGb3J3YXJkTGlzdFByb3h5OjphZGRJdGVtKFJlCiAgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkJhY2tGb3J3YXJkQWRkSXRlbSh0b0JhY2tGb3J3YXJkTGlzdEl0ZW1T
dGF0ZShpdGVtLmdldCgpKSkpOwogfQogCi12b2lkIFdlYkJhY2tGb3J3YXJkTGlzdFByb3h5Ojpn
b1RvSXRlbShIaXN0b3J5SXRlbSogaXRlbSkKK3ZvaWQgV2ViQmFja0ZvcndhcmRMaXN0UHJveHk6
OmdvVG9JdGVtKEhpc3RvcnlJdGVtJiBpdGVtKQogewogICAgIGlmICghbV9wYWdlKQogICAgICAg
ICByZXR1cm47CiAKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgc2FuZGJveEV4dGVuc2lv
bkhhbmRsZTsKLSAgICBtX3BhZ2UtPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkJh
Y2tGb3J3YXJkR29Ub0l0ZW0oaXRlbS0+aWRlbnRpZmllcigpKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6QmFja0ZvcndhcmRHb1RvSXRlbTo6UmVwbHkoc2FuZGJveEV4dGVuc2lvbkhhbmRsZSkp
OworICAgIG1fcGFnZS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6QmFja0Zvcndh
cmRHb1RvSXRlbShpdGVtLmlkZW50aWZpZXIoKSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkJh
Y2tGb3J3YXJkR29Ub0l0ZW06OlJlcGx5KHNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKICAgICBt
X3BhZ2UtPnNhbmRib3hFeHRlbnNpb25UcmFja2VyKCkuYmVnaW5Mb2FkKG1fcGFnZS0+bWFpbldl
YkZyYW1lKCksIFdURk1vdmUoc2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpOwogfQogCkluZGV4OiBT
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJCYWNrRm9yd2FyZExpc3RQcm94eS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkJhY2tG
b3J3YXJkTGlzdFByb3h5LmgJKHJldmlzaW9uIDIzNzE1NykKKysrIFNvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYkJhY2tGb3J3YXJkTGlzdFByb3h5LmgJKHdvcmtpbmcgY29weSkK
QEAgLTU2LDcgKzU2LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgYWRkSXRlbShSZWY8V2ViQ29y
ZTo6SGlzdG9yeUl0ZW0+JiYpIG92ZXJyaWRlOwogCi0gICAgdm9pZCBnb1RvSXRlbShXZWJDb3Jl
OjpIaXN0b3J5SXRlbSopIG92ZXJyaWRlOworICAgIHZvaWQgZ29Ub0l0ZW0oV2ViQ29yZTo6SGlz
dG9yeUl0ZW0mKSBvdmVycmlkZTsKICAgICAgICAgCiAgICAgV2ViQ29yZTo6SGlzdG9yeUl0ZW0q
IGl0ZW1BdEluZGV4KGludCkgb3ZlcnJpZGU7CiAgICAgaW50IGJhY2tMaXN0Q291bnQoKSBjb25z
dCBvdmVycmlkZTsKSW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIz
NzE2MCkKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5
KQpAQCAtMSwzICsxLDE5IEBACisyMDE4LTEwLTE2ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmVwbGFjZSBIaXN0b3J5SXRlbSogd2l0aCBI
aXN0b3J5SXRlbSYgd2hlcmUgcG9zc2libGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE5MDYxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogSGlzdG9yeS9CYWNrRm9yd2FyZExpc3QuaDoKKyAgICAgICAg
KiBIaXN0b3J5L0JhY2tGb3J3YXJkTGlzdC5tbToKKyAgICAgICAgKEJhY2tGb3J3YXJkTGlzdDo6
Z29Ub0l0ZW0pOgorICAgICAgICAqIEhpc3RvcnkvV2ViQmFja0ZvcndhcmRMaXN0Lm1tOgorICAg
ICAgICAoLVtXZWJCYWNrRm9yd2FyZExpc3QgZ29Ub0l0ZW06XSk6CisgICAgICAgICogSGlzdG9y
eS9XZWJIaXN0b3J5SXRlbS5tbToKKyAgICAgICAgKFdLTm90aWZ5SGlzdG9yeUl0ZW1DaGFuZ2Vk
KToKKyAgICAgICAgKiBIaXN0b3J5L1dlYkhpc3RvcnlJdGVtSW50ZXJuYWwuaDoKKwogMjAxOC0x
MC0xNSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAg
ICAgIEZpeCBpT1MgYnVpbGQgYWZ0ZXIgcjIzNzE1NwpJbmRleDogU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvSGlzdG9yeS9CYWNrRm9yd2FyZExpc3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9IaXN0b3J5L0JhY2tGb3J3YXJkTGlzdC5oCShyZXZpc2lvbiAyMzcxNTcp
CisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L0JhY2tGb3J3YXJkTGlzdC5oCSh3
b3JraW5nIGNvcHkpCkBAIC00NSw3ICs0NSw3IEBAIHB1YmxpYzogCiAgICAgdm9pZCBhZGRJdGVt
KFJlZjxXZWJDb3JlOjpIaXN0b3J5SXRlbT4mJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBnb0JhY2so
KTsKICAgICB2b2lkIGdvRm9yd2FyZCgpOwotICAgIHZvaWQgZ29Ub0l0ZW0oV2ViQ29yZTo6SGlz
dG9yeUl0ZW0qKSBvdmVycmlkZTsKKyAgICB2b2lkIGdvVG9JdGVtKFdlYkNvcmU6Okhpc3RvcnlJ
dGVtJikgb3ZlcnJpZGU7CiAgICAgICAgIAogICAgIFdlYkNvcmU6Okhpc3RvcnlJdGVtKiBiYWNr
SXRlbSgpOwogICAgIFdlYkNvcmU6Okhpc3RvcnlJdGVtKiBjdXJyZW50SXRlbSgpOwpJbmRleDog
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9CYWNrRm9yd2FyZExpc3QubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9CYWNrRm9yd2FyZExpc3Qu
bW0JKHJldmlzaW9uIDIzNzE1NykKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3Rvcnkv
QmFja0ZvcndhcmRMaXN0Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC05MSwxNCArOTEsMTQgQEAgdm9p
ZCBCYWNrRm9yd2FyZExpc3Q6OmdvRm9yd2FyZCgpCiAgICAgICAgIG1fY3VycmVudCsrOwogfQog
Ci12b2lkIEJhY2tGb3J3YXJkTGlzdDo6Z29Ub0l0ZW0oSGlzdG9yeUl0ZW0qIGl0ZW0pCit2b2lk
IEJhY2tGb3J3YXJkTGlzdDo6Z29Ub0l0ZW0oSGlzdG9yeUl0ZW0mIGl0ZW0pCiB7Ci0gICAgaWYg
KCFtX2VudHJpZXMuc2l6ZSgpIHx8ICFpdGVtKQorICAgIGlmICghbV9lbnRyaWVzLnNpemUoKSkK
ICAgICAgICAgcmV0dXJuOwotICAgICAgICAKKwogICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAg
ICBmb3IgKDsgaW5kZXggPCBtX2VudHJpZXMuc2l6ZSgpOyArK2luZGV4KSB7Ci0gICAgICAgIGlm
IChtX2VudHJpZXNbaW5kZXhdLnB0cigpID09IGl0ZW0pCisgICAgICAgIGlmIChtX2VudHJpZXNb
aW5kZXhdLnB0cigpID09ICZpdGVtKQogICAgICAgICAgICAgYnJlYWs7CiAgICAgfQogCkluZGV4
OiBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkJhY2tGb3J3YXJkTGlzdC5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkJhY2tGb3J3
YXJkTGlzdC5tbQkocmV2aXNpb24gMjM3MTU3KQorKysgU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
SGlzdG9yeS9XZWJCYWNrRm9yd2FyZExpc3QubW0JKHdvcmtpbmcgY29weSkKQEAgLTIxOSw3ICsy
MTksOCBAQCAtICh2b2lkKWdvRm9yd2FyZAogCiAtICh2b2lkKWdvVG9JdGVtOihXZWJIaXN0b3J5
SXRlbSAqKWl0ZW0KIHsKLSAgICBjb3JlKHNlbGYpLT5nb1RvSXRlbShjb3JlKGl0ZW0pKTsKKyAg
ICBpZiAoaXRlbSkKKyAgICAgICAgY29yZShzZWxmKS0+Z29Ub0l0ZW0oKmNvcmUoaXRlbSkpOwog
fQogCiAtIChXZWJIaXN0b3J5SXRlbSAqKWJhY2tJdGVtCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW0JKHJldmlzaW9uIDIzNzE0
OCkKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW0J
KHdvcmtpbmcgY29weSkKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgSGlzdG9yeUl0ZW1NYXAm
IGhpc3RvcnlJdGVtV3JhcHBlCiAgICAgcmV0dXJuIGhpc3RvcnlJdGVtV3JhcHBlcnM7CiB9CiAK
LXZvaWQgV0tOb3RpZnlIaXN0b3J5SXRlbUNoYW5nZWQoSGlzdG9yeUl0ZW0qKQordm9pZCBXS05v
dGlmeUhpc3RvcnlJdGVtQ2hhbmdlZChIaXN0b3J5SXRlbSYpCiB7CiAjaWYgIVBMQVRGT1JNKElP
UykKICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVtSW50ZXJuYWwuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVt
SW50ZXJuYWwuaAkocmV2aXNpb24gMjM3MTQ4KQorKysgU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
SGlzdG9yeS9XZWJIaXN0b3J5SXRlbUludGVybmFsLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDEz
ICszMywxMyBAQAogI2ltcG9ydCA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKLSAgICBjbGFzcyBIaXN0b3J5SXRlbTsKK2NsYXNzIEhpc3RvcnlJdGVtOwogfQog
CiBXZWJDb3JlOjpIaXN0b3J5SXRlbSogY29yZShXZWJIaXN0b3J5SXRlbSAqaXRlbSk7CiBXZWJI
aXN0b3J5SXRlbSAqa2l0KFdlYkNvcmU6Okhpc3RvcnlJdGVtKiBpdGVtKTsKIAotZXh0ZXJuIHZv
aWQgV0tOb3RpZnlIaXN0b3J5SXRlbUNoYW5nZWQoV2ViQ29yZTo6SGlzdG9yeUl0ZW0qKTsKK2V4
dGVybiB2b2lkIFdLTm90aWZ5SGlzdG9yeUl0ZW1DaGFuZ2VkKFdlYkNvcmU6Okhpc3RvcnlJdGVt
Jik7CiAKIEBpbnRlcmZhY2UgV2ViSGlzdG9yeUl0ZW0gKCkKIApJbmRleDogU291cmNlL1dlYktp
dExlZ2FjeS93aW4vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kv
d2luL0NoYW5nZUxvZwkocmV2aXNpb24gMjM3MTgxKQorKysgU291cmNlL1dlYktpdExlZ2FjeS93
aW4vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTgtMTAtMTYg
IEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBS
ZXBsYWNlIEhpc3RvcnlJdGVtKiB3aXRoIEhpc3RvcnlJdGVtJiB3aGVyZSBwb3NzaWJsZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwNjE3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBCYWNrRm9yd2Fy
ZExpc3QuY3BwOgorICAgICAgICAoQmFja0ZvcndhcmRMaXN0Ojpnb1RvSXRlbSk6CisgICAgICAg
ICogQmFja0ZvcndhcmRMaXN0Lmg6CisgICAgICAgICogV2ViQmFja0ZvcndhcmRMaXN0LmNwcDoK
KyAgICAgICAgKFdlYkJhY2tGb3J3YXJkTGlzdDo6Z29Ub0l0ZW0pOgorCiAyMDE4LTEwLTE1ICBB
bGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRml4
IFdpbmRvd3MgYnVpbGQuCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9CYWNrRm9yd2Fy
ZExpc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0JhY2tGb3J3
YXJkTGlzdC5jcHAJKHJldmlzaW9uIDIzNzE1NykKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvd2lu
L0JhY2tGb3J3YXJkTGlzdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk5LDE0ICs5OSwxNCBAQCB2
b2lkIEJhY2tGb3J3YXJkTGlzdDo6Z29Gb3J3YXJkKCkKICAgICB9CiB9CiAKLXZvaWQgQmFja0Zv
cndhcmRMaXN0Ojpnb1RvSXRlbShIaXN0b3J5SXRlbSogaXRlbSkKK3ZvaWQgQmFja0ZvcndhcmRM
aXN0Ojpnb1RvSXRlbShIaXN0b3J5SXRlbSYgaXRlbSkKIHsKLSAgICBpZiAoIW1fZW50cmllcy5z
aXplKCkgfHwgIWl0ZW0pCisgICAgaWYgKCFtX2VudHJpZXMuc2l6ZSgpKQogICAgICAgICByZXR1
cm47CiAgICAgICAgIAogICAgIHVuc2lnbmVkIGludCBpbmRleCA9IDA7CiAgICAgZm9yICg7IGlu
ZGV4IDwgbV9lbnRyaWVzLnNpemUoKTsgKytpbmRleCkKLSAgICAgICAgaWYgKG1fZW50cmllc1tp
bmRleF0ucHRyKCkgPT0gaXRlbSkKKyAgICAgICAgaWYgKG1fZW50cmllc1tpbmRleF0ucHRyKCkg
PT0gJml0ZW0pCiAgICAgICAgICAgICBicmVhazsKICAgICBpZiAoaW5kZXggPCBtX2VudHJpZXMu
c2l6ZSgpKSB7CiAgICAgICAgIG1fY3VycmVudCA9IGluZGV4OwpJbmRleDogU291cmNlL1dlYktp
dExlZ2FjeS93aW4vQmFja0ZvcndhcmRMaXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dExlZ2FjeS93aW4vQmFja0ZvcndhcmRMaXN0LmgJKHJldmlzaW9uIDIzNzE1NykKKysrIFNvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL0JhY2tGb3J3YXJkTGlzdC5oCSh3b3JraW5nIGNvcHkpCkBAIC00
Miw3ICs0Miw3IEBAIHB1YmxpYzogCiAgICAgdm9pZCBhZGRJdGVtKFJlZjxXZWJDb3JlOjpIaXN0
b3J5SXRlbT4mJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBnb0JhY2soKTsKICAgICB2b2lkIGdvRm9y
d2FyZCgpOwotICAgIHZvaWQgZ29Ub0l0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0qKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGdvVG9JdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtJikgb3ZlcnJpZGU7CiAg
ICAgICAgIAogICAgIFdlYkNvcmU6Okhpc3RvcnlJdGVtKiBiYWNrSXRlbSgpOwogICAgIFdlYkNv
cmU6Okhpc3RvcnlJdGVtKiBjdXJyZW50SXRlbSgpOwpJbmRleDogU291cmNlL1dlYktpdExlZ2Fj
eS93aW4vV2ViQmFja0ZvcndhcmRMaXN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9XZWJCYWNrRm9yd2FyZExpc3QuY3BwCShyZXZpc2lvbiAyMzcxNDgpCisrKyBT
b3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJCYWNrRm9yd2FyZExpc3QuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xNDUsNyArMTQ1LDkgQEAgSFJFU1VMVCBXZWJCYWNrRm9yd2FyZExpc3Q6OmdvVG9J
dGVtKF9JbgogICAgIGlmICghaXRlbSB8fCBGQUlMRUQoaXRlbS0+UXVlcnlJbnRlcmZhY2UoJndl
Ykhpc3RvcnlJdGVtKSkpCiAgICAgICAgIHJldHVybiBFX0ZBSUw7CiAKLSAgICBtX2JhY2tGb3J3
YXJkTGlzdC0+Z29Ub0l0ZW0od2ViSGlzdG9yeUl0ZW0tPmhpc3RvcnlJdGVtKCkpOworICAgIGlm
IChhdXRvIGl0ZW0gPSB3ZWJIaXN0b3J5SXRlbS0+aGlzdG9yeUl0ZW0oKSkKKyAgICAgICAgbV9i
YWNrRm9yd2FyZExpc3QtPmdvVG9JdGVtKCppdGVtKTsKKwogICAgIHJldHVybiBTX09LOwogfQog
Cg==
</data>
<flag name="review"
          id="369741"
          type_id="1"
          status="+"
          setter="cdumez"
    />
          </attachment>
      

    </bug>

</bugzilla>