<?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>50767</bug_id>
          
          <creation_ts>2010-12-09 10:27:20 -0800</creation_ts>
          <short_desc>Add support for custom representation</short_desc>
          <delta_ts>2010-12-09 10:37:48 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>319557</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-12-09 10:27:20 -0800</bug_when>
    <thetext>Add support for custom representation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319562</commentid>
    <comment_count>1</comment_count>
      <attachid>76088</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-12-09 10:33:02 -0800</bug_when>
    <thetext>Created attachment 76088
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319568</commentid>
    <comment_count>2</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-12-09 10:37:48 -0800</bug_when>
    <thetext>Committed r73625: &lt;http://trac.webkit.org/changeset/73625&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>76088</attachid>
            <date>2010-12-09 10:33:02 -0800</date>
            <delta_ts>2010-12-09 10:35:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50767-20101209103301.patch</filename>
            <type>text/plain</type>
            <size>25413</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdDIvQ2hhbmdlTG9nIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXgg
MThiZGVmNDQ4NjBmZjc3MTQxZDI3MTAwODJhNWExNzA1MjNjMmMyZi4uMDEzODRmYWFjYjNlNzJl
MTMxZjA4MDNhNmYxNGYxZWIyNTQ4YjE5OCAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw5MSBAQAorMjAxMC0xMi0wOSAgQW5k
ZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBjdXN0b20gcmVwcmVz
ZW50YXRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTUwNzY3CisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29k
ZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29k
ZSk6CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAg
ICAgICAgQWRkIG1pbWVUeXBlc1dpdGhDdXN0b21SZXByZXNlbnRhdGlvbiBhbmQgZW5jb2RlIGFu
ZCBkZWNvZGUgYWNjb3JkaW5nbHkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL21hYy9QYWdl
Q2xpZW50SW1wbC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvbWFjL1BhZ2VDbGllbnRJbXBs
Lm1tOgorICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50SW1wbDo6ZGlkQ29tbWl0TG9hZEZvck1h
aW5GcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRJbXBsOjpkaWRGaW5pc2hMb2Fk
aW5nRGF0YUZvckN1c3RvbVJlcHJlc2VudGF0aW9uKToKKyAgICAgICAgQWRkIGVtcHR5IHN0dWJz
IGZvciBub3cuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3F3a3BhZ2UuY3BwOgorICAg
ICAgICAoUVdLUGFnZVByaXZhdGU6OmRpZENvbW1pdExvYWRGb3JNYWluRnJhbWUpOgorICAgICAg
ICAoUVdLUGFnZVByaXZhdGU6OmRpZEZpbmlzaExvYWRpbmdEYXRhRm9yQ3VzdG9tUmVwcmVzZW50
YXRpb24pOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXdrcGFnZV9wLmg6CisgICAgICAg
IEFkZCBlbXB0eSBzdHVicy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9QYWdlQ2xpZW50Lmg6Cisg
ICAgICAgIEFkZCBuZXcgZnVuY3Rpb25zIGZvciBjdXN0b20gcmVwcmVzZW50YXRpb25zLgorCisg
ICAgICAgICogVUlQcm9jZXNzL1dlYkZyYW1lUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZVByb3h5OjpjYW5TaG93TUlNRVR5cGUpOgorICAgICAgICBDaGVjayB0aGF0IHRoZSBt
aW1lIHR5cGUgaXMgbm90IG51bGwuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpkaWRDb21taXRMb2FkRm9yRnJh
bWUpOgorICAgICAgICBUaGlzIG5vdyB0YWtlcyBhbiBhZGRpdGlvbmFsIGZyYW1lSGFzQ3VzdG9t
UmVwcmVzZW50YXRpb24gcGFyYW1ldGVyLiAKKyAgICAgICAgQ2FsbCB0aGUgcGFnZSBjbGllbnQg
ZnVuY3Rpb24uCisKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpkaWRGaW5pc2hMb2Fk
aW5nRGF0YUZvckN1c3RvbVJlcHJlc2VudGF0aW9uKToKKyAgICAgICAgQ2FsbCB0aGUgcGFnZSBj
bGllbnQgZnVuY3Rpb24uCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3Nh
Z2VzLmluOgorICAgICAgICBDaGFuZ2UgRGlkQ29tbWl0TG9hZEZvckZyYW1lIG1lc3NhZ2UsIGFk
ZCBEaWRGaW5pc2hMb2FkaW5nRGF0YUZvckN1c3RvbVJlcHJlc2VudGF0aW9uIG1lc3NhZ2UuCisK
KyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW06CisgICAgICAgIChXZWJL
aXQ6OldlYkNvbnRleHQ6OnBsYXRmb3JtSW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgorICAgICAgICBX
ZSB3YW50IHRvIHVzZSBjdXN0b20gcmVwcmVzZW50YXRpb25zIGZvciBQREYgYW5kIFBvc3RTY3Jp
cHQgTUlNRSB0eXBlcy4KKworICAgICAgICAqIFVJUHJvY2Vzcy93aW4vV2ViVmlldy5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlZpZXc6OmRpZENvbW1pdExvYWRGb3JNYWluRnJhbWUpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJWaWV3OjpkaWRGaW5pc2hMb2FkaW5nRGF0YUZvckN1c3RvbVJlcHJl
c2VudGF0aW9uKToKKyAgICAgICAgKiBVSVByb2Nlc3Mvd2luL1dlYlZpZXcuaDoKKyAgICAgICAg
QWRkIHN0dWJzLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50
OjpXZWJGcmFtZUxvYWRlckNsaWVudCk6CisgICAgICAgIEluaXRpYWxpemUgbV9mcmFtZUhhc0N1
c3RvbVJlcHJlc2VudGF0aW9uLgorCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpoYXNIVE1MVmlldyk6CisgICAgICAgIFRoZSBmcmFtZSBoYXMgYSBIVE1MIHZpZXcgdW5s
ZXNzIGl0IGhhcyBhIGN1c3RvbSByZXByZXNlbnRhdGlvbi4KKworICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRDb21taXRMb2FkKToKKyAgICAgICAgUGFz
cyBhbG9uZyB3aGV0aGVyIHRoZSBmcmFtZSBoYXMgYSBjdXN0b20gcmVwcmVzZW50YXRpb24uCisK
KyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbW1pdHRlZExvYWQpOgor
ICAgICAgICBEb24ndCBzZW5kIGRhdGEgYmFjayB0byBXZWJDb3JlIGlmIHRoZSBmcmFtZSBoYXMg
YSBjdXN0b20gcmVwcmVzZW50YXRpb24uCisKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmZpbmlzaGVkTG9hZGluZyk6CisgICAgICAgIFNlbmQgYWxsIHRoZSBkYXRhIHRv
IHRoZSBVSSBwcm9jZXNzLgorCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50
Ojp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKToKKyAgICAgICAgVXBkYXRlIHRoZSBt
X2ZyYW1lSGFzQ3VzdG9tUmVwcmVzZW50YXRpb24gc3RhdGUgYmFzZWQgb24gdGhlIE1JTUUgdHlw
ZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJD
bGllbnQuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmZyYW1lSGFz
Q3VzdG9tUmVwcmVzZW50YXRpb24pOgorICAgICAgICBBZGQgZ2V0dGVyLgorCisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFNYWMuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnBhaW50SW50b1VwZGF0
ZUNodW5rKToKKyAgICAgICAgRG9uJ3QgZG8gYW55IHBhaW50aW5nIGlmIHRoZSBtYWluIGZyYW1l
IGhhcyBhIGN1c3RvbSByZXByZXNlbnRhdGlvbi4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OmluaXRpYWxpemVXZWJQ
cm9jZXNzKToKKyAgICAgICAgQWRkIGFsbCB0aGUgTUlNRSB0eXBlcyB3aXRoIGN1c3RvbSByZXBy
ZXNlbnRhdGlvbnMuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuaDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6c2hvdWxkVXNlQ3VzdG9tUmVwcmVzZW50YXRpb25Gb3JN
SU1FVHlwZSk6CisgICAgICAgIEFkZCBnZXR0ZXIuCisKIDIwMTAtMTItMDkgIEJyYWR5IEVpZHNv
biAgPGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hY2llaiBTdGFj
aG93aWFrLgpkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5jcHAgYi9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcAppbmRleCA0YTAwMTA2MWI0NDViY2I0ZWNkZjJiYjJlMDNjNjQzYjgxZjYxZWQ2Li44YjIw
ZDViM2YwYzQzNzc5NzA1MWZmZDg2ZmExZjE2Y2U0NWFjMTllIDEwMDY0NAotLS0gYS9XZWJLaXQy
L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysgYi9XZWJLaXQyL1No
YXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcApAQCAtNDYsNiArNDYsNyBAQCB2
b2lkIFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShDb3JlSVBDOjpBcmd1bWVu
dEVuY29kZXIqIGVuY29kZXIpIGNvbgogICAgIGVuY29kZXItPmVuY29kZSh1cmxTY2hlbWVzUmVn
aXN0ZXJlcmRBc0VtcHR5RG9jdW1lbnQpOwogICAgIGVuY29kZXItPmVuY29kZSh1cmxTY2hlbWVz
UmVnaXN0ZXJlZEFzU2VjdXJlKTsKICAgICBlbmNvZGVyLT5lbmNvZGUodXJsU2NoZW1lc0Zvcldo
aWNoRG9tYWluUmVsYXhhdGlvbklzRm9yYmlkZGVuKTsKKyAgICBlbmNvZGVyLT5lbmNvZGUobWlt
ZVR5cGVzV2l0aEN1c3RvbVJlcHJlc2VudGF0aW9uKTsKICAgICBlbmNvZGVyLT5lbmNvZGUoc3Rh
dGljX2Nhc3Q8dWludDMyX3Q+KGNhY2hlTW9kZWwpKTsKICAgICBlbmNvZGVyLT5lbmNvZGUoc2hv
dWxkVHJhY2tWaXNpdGVkTGlua3MpOwogICAgIGVuY29kZXItPmVuY29kZShsYW5ndWFnZUNvZGUp
OwpAQCAtNzIsNiArNzMsOCBAQCBib29sIFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRl
Y29kZShDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqIGRlY29kZXIsIFdlYgogICAgICAgICByZXR1
cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUocGFyYW1ldGVycy51cmxTY2hlbWVz
Rm9yV2hpY2hEb21haW5SZWxheGF0aW9uSXNGb3JiaWRkZW4pKQogICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUocGFyYW1ldGVycy5taW1lVHlwZXNXaXRoQ3Vz
dG9tUmVwcmVzZW50YXRpb24pKQorICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICB1aW50MzJf
dCBjYWNoZU1vZGVsOwogICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlKGNhY2hlTW9kZWwpKQpkaWZm
IC0tZ2l0IGEvV2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIGIv
V2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IDRiZDJh
N2IzOGZiOWQ3YWNiYzFjMTc5YTJlZGE1ODk1NmUzMTkwOGMuLmY0OTBmOWZiNGQ3YWZhMDBjZjMx
MTM3ZWZlMzhmYzAyN2MwMTc5NzkgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvU2hhcmVkL1dlYlByb2Nl
c3NDcmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzLmgKQEAgLTU2LDYgKzU2LDkgQEAgc3RydWN0IFdlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMgewogICAgIFZlY3RvcjxTdHJpbmc+IHVybFNjaGVtZXNSZWdpc3RlcmVk
QXNTZWN1cmU7CiAgICAgVmVjdG9yPFN0cmluZz4gdXJsU2NoZW1lc0ZvcldoaWNoRG9tYWluUmVs
YXhhdGlvbklzRm9yYmlkZGVuOwogCisgICAgLy8gTUlNRSB0eXBlcyBmb3Igd2hpY2ggdGhlIFVJ
IHByb2Nlc3Mgd2lsbCBoYW5kbGUgc2hvd2luZyB0aGUgZGF0YS4KKyAgICBWZWN0b3I8U3RyaW5n
PiBtaW1lVHlwZXNXaXRoQ3VzdG9tUmVwcmVzZW50YXRpb247CisKICAgICBDYWNoZU1vZGVsIGNh
Y2hlTW9kZWw7CiAgICAgYm9vbCBzaG91bGRUcmFja1Zpc2l0ZWRMaW5rczsKICAgICAKZGlmZiAt
LWdpdCBhL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvUGFnZUNsaWVudEltcGwuaCBiL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9tYWMvUGFnZUNsaWVudEltcGwuaAppbmRleCA3MmVmMGQxODNlODMw
OGJlZDY4MmYzNjY1YTFkZjNiNGNmYzIwODIxLi42NmI2ZjZmNmY2MmIxMGFlMjcyMzY5NzcxNzk5
YTRjYjM1YjQxMjkxIDEwMDY0NAotLS0gYS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1BhZ2VD
bGllbnRJbXBsLmgKKysrIGIvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9QYWdlQ2xpZW50SW1w
bC5oCkBAIC03Niw2ICs3Niw5IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHBhZ2VEaWRM
ZWF2ZUFjY2VsZXJhdGVkQ29tcG9zaXRpbmcoKTsKICNlbmRpZgogCisgICAgdmlydHVhbCB2b2lk
IGRpZENvbW1pdExvYWRGb3JNYWluRnJhbWUoYm9vbCB1c2VDdXN0b21SZXByZXNlbnRhdGlvbik7
CisgICAgdmlydHVhbCB2b2lkIGRpZEZpbmlzaExvYWRpbmdEYXRhRm9yQ3VzdG9tUmVwcmVzZW50
YXRpb24oY29uc3QgQ29yZUlQQzo6RGF0YVJlZmVyZW5jZSYpOworCiAgICAgV0tWaWV3KiBtX3dr
VmlldzsKICAgICBSZXRhaW5QdHI8V2ViRWRpdG9yVW5kb1RhcmdldE9iakM+IG1fdW5kb1Rhcmdl
dDsKIH07CmRpZmYgLS1naXQgYS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1BhZ2VDbGllbnRJ
bXBsLm1tIGIvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9QYWdlQ2xpZW50SW1wbC5tbQppbmRl
eCAxOTJkZWZiOTY0OWI3YzQzOTNhYTdmMmY5YmRiYjlmYzU4MjA0YWZlLi41NzI5N2EyNmI1MmYz
ZTY1NmZhZGYyNjE4NWExODY3ZWJkMWY1OTRjIDEwMDY0NAotLS0gYS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvbWFjL1BhZ2VDbGllbnRJbXBsLm1tCisrKyBiL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9t
YWMvUGFnZUNsaWVudEltcGwubW0KQEAgLTI3Myw0ICsyNzMsMTIgQEAgdm9pZCBQYWdlQ2xpZW50
SW1wbDo6cGFnZURpZExlYXZlQWNjZWxlcmF0ZWRDb21wb3NpdGluZygpCiB9CiAjZW5kaWYgLy8g
VVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQogCit2b2lkIFBhZ2VDbGllbnRJbXBsOjpkaWRD
b21taXRMb2FkRm9yTWFpbkZyYW1lKGJvb2wgdXNlQ3VzdG9tUmVwcmVzZW50YXRpb24pCit7Cit9
CisKK3ZvaWQgUGFnZUNsaWVudEltcGw6OmRpZEZpbmlzaExvYWRpbmdEYXRhRm9yQ3VzdG9tUmVw
cmVzZW50YXRpb24oY29uc3QgQ29yZUlQQzo6RGF0YVJlZmVyZW5jZSYpCit7Cit9CisKIH0gLy8g
bmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3
a3BhZ2UuY3BwIGIvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3a3BhZ2UuY3BwCmluZGV4IGNl
YmFjMmI0NGRkMzdhOWFkYzY3OGY2YjRjMDA1YmZjOGM3NmI0MmQuLjJhNWUwMTgyMmUzMWYyZjAx
ZGM4MjFlZGZhNWQyNDk3MTQwMGQxY2EgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xd2twYWdlLmNwcAorKysgYi9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdrcGFnZS5j
cHAKQEAgLTE1OSw2ICsxNTksMTQgQEAgdm9pZCBRV0tQYWdlUHJpdmF0ZTo6c2V0RmluZEluZGlj
YXRvcihQYXNzUmVmUHRyPEZpbmRJbmRpY2F0b3I+LCBib29sIGZhZGVPdXQpCiB7CiB9CiAKK3Zv
aWQgUVdLUGFnZVByaXZhdGU6OmRpZENvbW1pdExvYWRGb3JNYWluRnJhbWUoYm9vbCB1c2VDdXN0
b21SZXByZXNlbnRhdGlvbikKK3sKK30KKwordm9pZCBRV0tQYWdlUHJpdmF0ZTo6ZGlkRmluaXNo
TG9hZGluZ0RhdGFGb3JDdXN0b21SZXByZXNlbnRhdGlvbihjb25zdCBDb3JlSVBDOjpEYXRhUmVm
ZXJlbmNlJikKK3sKK30KKwogdm9pZCBRV0tQYWdlUHJpdmF0ZTo6cGFpbnQoUVBhaW50ZXIqIHBh
aW50ZXIsIFFSZWN0IGFyZWEpCiB7CiAgICAgcGFpbnRlci0+c2F2ZSgpOwpkaWZmIC0tZ2l0IGEv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3a3BhZ2VfcC5oIGIvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3F3a3BhZ2VfcC5oCmluZGV4IDU1ZmY3NjQyOTA4YmI3YTk5MjdiZGY3NWY5OWZiNTUx
ZDQ1Y2ZkN2IuLjFkOGNiNWI5Y2QyNGMzNThiM2VhMDE1OWMwNGI5MWJiZWZlNjUxOTggMTAwNjQ0
Ci0tLSBhL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2twYWdlX3AuaAorKysgYi9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXdrcGFnZV9wLmgKQEAgLTY4LDYgKzY4LDkgQEAgcHVibGljOgog
CiAgICAgdmlydHVhbCB2b2lkIHNldEZpbmRJbmRpY2F0b3IoUGFzc1JlZlB0cjxXZWJLaXQ6OkZp
bmRJbmRpY2F0b3I+LCBib29sIGZhZGVPdXQpOwogCisgICAgdmlydHVhbCB2b2lkIGRpZENvbW1p
dExvYWRGb3JNYWluRnJhbWUoYm9vbCB1c2VDdXN0b21SZXByZXNlbnRhdGlvbik7CisgICAgdmly
dHVhbCB2b2lkIGRpZEZpbmlzaExvYWRpbmdEYXRhRm9yQ3VzdG9tUmVwcmVzZW50YXRpb24oY29u
c3QgQ29yZUlQQzo6RGF0YVJlZmVyZW5jZSYpOworCiAgICAgdm9pZCBwYWludChRUGFpbnRlciog
cGFpbnRlciwgUVJlY3QpOwogCiAgICAgdm9pZCBrZXlQcmVzc0V2ZW50KFFLZXlFdmVudCopOwpk
aWZmIC0tZ2l0IGEvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZUNsaWVudC5oIGIvV2ViS2l0Mi9VSVBy
b2Nlc3MvUGFnZUNsaWVudC5oCmluZGV4IGMzZTVhNmE2YWIyMDg3OWM4YTM1Y2JlYjJmM2UyMGFj
Y2RkZDRjNTcuLmJiNmNjNWYyZjIyZWNhNjU1NzViM2YzN2Y4YmY2NWE2YjBiYWNmZjQgMTAwNjQ0
Ci0tLSBhL1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaAorKysgYi9XZWJLaXQyL1VJUHJv
Y2Vzcy9QYWdlQ2xpZW50LmgKQEAgLTkwLDYgKzkwLDEwIEBAIHB1YmxpYzoKICNpZiBQTEFURk9S
TShXSU4pCiAgICAgdmlydHVhbCBIV05EIG5hdGl2ZVdpbmRvdygpID0gMDsKICNlbmRpZgorCisg
ICAgLy8gQ3VzdG9tIHJlcHJlc2VudGF0aW9ucy4KKyAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tbWl0
TG9hZEZvck1haW5GcmFtZShib29sIHVzZUN1c3RvbVJlcHJlc2VudGF0aW9uKSA9IDA7CisgICAg
dmlydHVhbCB2b2lkIGRpZEZpbmlzaExvYWRpbmdEYXRhRm9yQ3VzdG9tUmVwcmVzZW50YXRpb24o
Y29uc3QgQ29yZUlQQzo6RGF0YVJlZmVyZW5jZSYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViRnJhbWVQcm94eS5jcHAg
Yi9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJGcmFtZVByb3h5LmNwcAppbmRleCBhNDgwZTUxMjFkYjE5
ZGE2MzFmNTdmNmUxODg4ODM5YzBiZDcxMTM3Li43M2IzMjFkYzcwODM5OWFjNjVjNzNkNDczYzJk
ZmNmYjEyZWUxZDNjIDEwMDY0NAotLS0gYS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJGcmFtZVByb3h5
LmNwcAorKysgYi9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJGcmFtZVByb3h5LmNwcApAQCAtODcsNyAr
ODcsNyBAQCBib29sIFdlYkZyYW1lUHJveHk6OmNhblNob3dNSU1FVHlwZShjb25zdCBTdHJpbmcm
IG1pbWVUeXBlKSBjb25zdAogCiAjaWYgUExBVEZPUk0oTUFDKQogICAgIC8vIE9uIE1hYywgd2Ug
Y2FuIHNob3cgUERGcyBpbiB0aGUgbWFpbiBmcmFtZS4KLSAgICBpZiAoaXNNYWluRnJhbWUoKSkK
KyAgICBpZiAoaXNNYWluRnJhbWUoKSAmJiAhbWltZVR5cGUuaXNFbXB0eSgpKQogICAgICAgICBy
ZXR1cm4gV2ViQ29udGV4dDo6cGRmQW5kUG9zdFNjcmlwdE1JTUVUeXBlcygpLmNvbnRhaW5zKG1p
bWVUeXBlKTsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuY3BwIGIvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCA1ZWQz
YmM4NzEwYWMwMmE5MjJlZjQwNGQ1ZGEzMWU3ZGJkNzNjNDdiLi44ODkyYjY1ZTE2YTIwZTlhN2Jm
YWViMzAxNmIzMjk1ZjkxYzA4Mzg0IDEwMDY0NAotLS0gYS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwCisrKyBiL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAg
LTI3LDYgKzI3LDcgQEAKIAogI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlUHJveHku
aCIKICNpbmNsdWRlICJBdXRoZW50aWNhdGlvbkRlY2lzaW9uTGlzdGVuZXIuaCIKKyNpbmNsdWRl
ICJEYXRhUmVmZXJlbmNlLmgiCiAjaW5jbHVkZSAiRHJhd2luZ0FyZWFQcm94eS5oIgogI2luY2x1
ZGUgIkZpbmRJbmRpY2F0b3IuaCIKICNpbmNsdWRlICJNZXNzYWdlSUQuaCIKQEAgLTgwOSw3ICs4
MTAsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRmFpbFByb3Zpc2lvbmFsTG9hZEZvckZyYW1l
KHVpbnQ2NF90IGZyYW1lSUQsIGNvbnN0IFJlc291cgogICAgIG1fbG9hZGVyQ2xpZW50LmRpZEZh
aWxQcm92aXNpb25hbExvYWRXaXRoRXJyb3JGb3JGcmFtZSh0aGlzLCBmcmFtZSwgZXJyb3IsIHVz
ZXJEYXRhLmdldCgpKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OmRpZENvbW1pdExvYWRGb3JG
cmFtZSh1aW50NjRfdCBmcmFtZUlELCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBjb25zdCBQbGF0
Zm9ybUNlcnRpZmljYXRlSW5mbyYgY2VydGlmaWNhdGVJbmZvLCBDb3JlSVBDOjpBcmd1bWVudERl
Y29kZXIqIGFyZ3VtZW50cykKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRDb21taXRMb2FkRm9yRnJh
bWUodWludDY0X3QgZnJhbWVJRCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBmcmFtZUhh
c0N1c3RvbVJlcHJlc2VudGF0aW9uLCBjb25zdCBQbGF0Zm9ybUNlcnRpZmljYXRlSW5mbyYgY2Vy
dGlmaWNhdGVJbmZvLCBDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqIGFyZ3VtZW50cykKIHsKICAg
ICBSZWZQdHI8QVBJT2JqZWN0PiB1c2VyRGF0YTsKICAgICBXZWJDb250ZXh0VXNlck1lc3NhZ2VE
ZWNvZGVyIG1lc3NhZ2VEZWNvZGVyKHVzZXJEYXRhLCBwYWdlTmFtZXNwYWNlKCktPmNvbnRleHQo
KSk7CkBAIC04MjIsNiArODIzLDEwIEBAIHZvaWQgV2ViUGFnZVByb3h5OjpkaWRDb21taXRMb2Fk
Rm9yRnJhbWUodWludDY0X3QgZnJhbWVJRCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwCiAgICAgZnJh
bWUtPnNldElzRnJhbWVTZXQoZmFsc2UpOwogICAgIGZyYW1lLT5zZXRDZXJ0aWZpY2F0ZUluZm8o
V2ViQ2VydGlmaWNhdGVJbmZvOjpjcmVhdGUoY2VydGlmaWNhdGVJbmZvKSk7CiAgICAgZnJhbWUt
PmRpZENvbW1pdExvYWQoKTsKKworICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSkKKyAgICAg
ICAgbV9wYWdlQ2xpZW50LT5kaWRDb21taXRMb2FkRm9yTWFpbkZyYW1lKGZyYW1lSGFzQ3VzdG9t
UmVwcmVzZW50YXRpb24pOworCiAgICAgbV9sb2FkZXJDbGllbnQuZGlkQ29tbWl0TG9hZEZvckZy
YW1lKHRoaXMsIGZyYW1lLCB1c2VyRGF0YS5nZXQoKSk7CiB9CiAKQEAgLTE1NzAsNCArMTU3NSw5
IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpleGNlZWRlZERhdGFiYXNlUXVvdGEodWludDY0X3QgZnJh
bWVJRCwgY29uc3QgU3RyaW5nJiBvcmlnaW5JCiAgICAgbmV3UXVvdGEgPSBtX3VpQ2xpZW50LmV4
Y2VlZGVkRGF0YWJhc2VRdW90YSh0aGlzLCBmcmFtZSwgb3JpZ2luLmdldCgpLCBkYXRhYmFzZU5h
bWUsIGRpc3BsYXlOYW1lLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRVc2FnZSwgZXhwZWN0ZWRVc2Fn
ZSk7CiB9CiAKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRGaW5pc2hMb2FkaW5nRGF0YUZvckN1c3Rv
bVJlcHJlc2VudGF0aW9uKGNvbnN0IENvcmVJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGFSZWZlcmVu
Y2UpCit7CisgICAgbV9wYWdlQ2xpZW50LT5kaWRGaW5pc2hMb2FkaW5nRGF0YUZvckN1c3RvbVJl
cHJlc2VudGF0aW9uKGRhdGFSZWZlcmVuY2UpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQK
ZGlmZiAtLWdpdCBhL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNjg5YmI4MDVmNDcwMTU1MmI1YzdmYmVmODRk
MDNhZjZiZmU2YTY5Ny4uNDIzMGJiMWFhZTk5YjE1YzBhODQ1ZWExZGNjODZlYmFhNTI5MzM5ZCAx
MDA2NDQKLS0tIGEvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTI3OSw3ICsyNzksNyBAQCBwcml2YXRlOgog
ICAgIHZvaWQgZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmFtZSh1aW50NjRfdCBmcmFtZUlE
LCBjb25zdCBTdHJpbmcmLCBib29sIGxvYWRpbmdTdWJzdGl0dXRlRGF0YUZvclVucmVhY2hhYmxl
VVJMLCBDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqKTsKICAgICB2b2lkIGRpZFJlY2VpdmVTZXJ2
ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKHVpbnQ2NF90IGZyYW1lSUQsIGNv
bnN0IFN0cmluZyYsIENvcmVJUEM6OkFyZ3VtZW50RGVjb2RlciopOwogICAgIHZvaWQgZGlkRmFp
bFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKHVpbnQ2NF90IGZyYW1lSUQsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImLCBDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqKTsKLSAgICB2b2lkIGRp
ZENvbW1pdExvYWRGb3JGcmFtZSh1aW50NjRfdCBmcmFtZUlELCBjb25zdCBTdHJpbmcmIG1pbWVU
eXBlLCBjb25zdCBQbGF0Zm9ybUNlcnRpZmljYXRlSW5mbyYsIENvcmVJUEM6OkFyZ3VtZW50RGVj
b2RlciopOworICAgIHZvaWQgZGlkQ29tbWl0TG9hZEZvckZyYW1lKHVpbnQ2NF90IGZyYW1lSUQs
IGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgZnJhbWVIYXNDdXN0b21SZXByZXNlbnRhdGlv
biwgY29uc3QgUGxhdGZvcm1DZXJ0aWZpY2F0ZUluZm8mLCBDb3JlSVBDOjpBcmd1bWVudERlY29k
ZXIqKTsKICAgICB2b2lkIGRpZEZpbmlzaERvY3VtZW50TG9hZEZvckZyYW1lKHVpbnQ2NF90IGZy
YW1lSUQsIENvcmVJUEM6OkFyZ3VtZW50RGVjb2RlciopOwogICAgIHZvaWQgZGlkRmluaXNoTG9h
ZEZvckZyYW1lKHVpbnQ2NF90IGZyYW1lSUQsIENvcmVJUEM6OkFyZ3VtZW50RGVjb2RlciopOwog
ICAgIHZvaWQgZGlkRmFpbExvYWRGb3JGcmFtZSh1aW50NjRfdCBmcmFtZUlELCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yJiwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKik7CkBAIC0zODQs
NiArMzg0LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90
ZWN0aW9uU3BhY2VJbkZyYW1lKHVpbnQ2NF90IGZyYW1lSUQsIGNvbnN0IFdlYkNvcmU6OlByb3Rl
Y3Rpb25TcGFjZSYsIGJvb2wmIGNhbkF1dGhlbnRpY2F0ZSk7CiAgICAgdm9pZCBkaWRSZWNlaXZl
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UodWludDY0X3QgZnJhbWVJRCwgY29uc3QgV2ViQ29yZTo6
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmLCB1aW50NjRfdCBjaGFsbGVuZ2VJRCk7CiAKKyAgICB2
b2lkIGRpZEZpbmlzaExvYWRpbmdEYXRhRm9yQ3VzdG9tUmVwcmVzZW50YXRpb24oY29uc3QgQ29y
ZUlQQzo6RGF0YVJlZmVyZW5jZSYgZGF0YSk7CisKICAgICBQYWdlQ2xpZW50KiBtX3BhZ2VDbGll
bnQ7CiAgICAgV2ViTG9hZGVyQ2xpZW50IG1fbG9hZGVyQ2xpZW50OwogICAgIFdlYlBvbGljeUNs
aWVudCBtX3BvbGljeUNsaWVudDsKZGlmZiAtLWdpdCBhL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5tZXNzYWdlcy5pbiBiL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNz
YWdlcy5pbgppbmRleCA3ZWQ4NmUyZGZhMGNjY2I3NWEwYTZlMWYzMjc1YTNjZTczODY3N2FhLi5i
YWI1NzllMGIwYzlmMGNhYTBmNGZmOTE4YmU0MGM1OWIyZjljNDU3IDEwMDY0NAotLS0gYS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KKysrIGIvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCkBAIC03Myw3ICs3Myw3IEBAIG1lc3NhZ2Vz
IC0+IFdlYlBhZ2VQcm94eSB7CiAgICAgRGlkQ3JlYXRlU3ViRnJhbWUodWludDY0X3QgZnJhbWVJ
RCkKIAogICAgICMgRnJhbWUgbG9hZCBtZXNzYWdlcy4KLSAgICBEaWRDb21taXRMb2FkRm9yRnJh
bWUodWludDY0X3QgZnJhbWVJRCwgV1RGOjpTdHJpbmcgbWltZVR5cGUsIFdlYktpdDo6UGxhdGZv
cm1DZXJ0aWZpY2F0ZUluZm8gY2VydGlmaWNhdGVJbmZvLCBXZWJLaXQ6OkluamVjdGVkQnVuZGxl
VXNlck1lc3NhZ2VFbmNvZGVyIHVzZXJEYXRhKQorICAgIERpZENvbW1pdExvYWRGb3JGcmFtZSh1
aW50NjRfdCBmcmFtZUlELCBXVEY6OlN0cmluZyBtaW1lVHlwZSwgYm9vbCBoYXNDdXN0b21SZXBy
ZXNlbnRhdGlvbiwgV2ViS2l0OjpQbGF0Zm9ybUNlcnRpZmljYXRlSW5mbyBjZXJ0aWZpY2F0ZUlu
Zm8sIFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVVc2VyTWVzc2FnZUVuY29kZXIgdXNlckRhdGEpCiAg
ICAgRGlkRmFpbExvYWRGb3JGcmFtZSh1aW50NjRfdCBmcmFtZUlELCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yIGVycm9yLCBXZWJLaXQ6OkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyIHVz
ZXJEYXRhKQogICAgIERpZEZhaWxQcm92aXNpb25hbExvYWRGb3JGcmFtZSh1aW50NjRfdCBmcmFt
ZUlELCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yLCBXZWJLaXQ6OkluamVjdGVkQnVuZGxl
VXNlck1lc3NhZ2VFbmNvZGVyIHVzZXJEYXRhKQogICAgIERpZEZpbmlzaERvY3VtZW50TG9hZEZv
ckZyYW1lKHVpbnQ2NF90IGZyYW1lSUQsIFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVVc2VyTWVzc2Fn
ZUVuY29kZXIgdXNlckRhdGEpCkBAIC05MCw2ICs5MCw5IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQ
cm94eSB7CiAKICAgICBGcmFtZURpZEJlY29tZUZyYW1lU2V0KHVpbnQ2NF90IGZyYW1lSUQsIGJv
b2wgdmFsdWUpCiAKKyAgICAjIEN1c3RvbSByZXByZXNlbnRhdGlvbnMKKyAgICBEaWRGaW5pc2hM
b2FkaW5nRGF0YUZvckN1c3RvbVJlcHJlc2VudGF0aW9uKENvcmVJUEM6OkRhdGFSZWZlcmVuY2Ug
ZGF0YSkKKwogICAgICMgRm9ybXMgbWVzc2FnZXMuCiAgICAgV2lsbFN1Ym1pdEZvcm0odWludDY0
X3QgZnJhbWVJRCwgdWludDY0X3Qgc291cmNlRnJhbWVJRCwgV2ViS2l0OjpTdHJpbmdQYWlyVmVj
dG9yIHRleHRGaWVsZFZhbHVlcywgdWludDY0X3QgbGlzdGVuZXJJRCwgV2ViS2l0OjpJbmplY3Rl
ZEJ1bmRsZVVzZXJNZXNzYWdlRW5jb2RlciB1c2VyRGF0YSkKIApkaWZmIC0tZ2l0IGEvV2ViS2l0
Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW0gYi9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMv
V2ViQ29udGV4dE1hYy5tbQppbmRleCAzYmVhYTUzOWI1ODc1Nzg1N2MzOWJiNzY4NDIzZTBhMjYw
ZDhiZjdmLi5mMDRmYTVmNzE4ODEzYTA0Njg0Njk5NGJkY2MxYjgyODk2MDY1MmM0IDEwMDY0NAot
LS0gYS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbQorKysgYi9XZWJLaXQy
L1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbQpAQCAtNjQsNiArNjQsMTAgQEAgU3RyaW5n
IFdlYkNvbnRleHQ6OmFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKQogCiB2b2lkIFdlYkNvbnRl
eHQ6OnBsYXRmb3JtSW5pdGlhbGl6ZVdlYlByb2Nlc3MoV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycyYgcGFyYW1ldGVycykKIHsKKyAgICAvLyBXZSB3YW50IHRvIHVzZSBhIFBERiB2aWV3IGlu
IHRoZSBVSSBwcm9jZXNzIGZvciBQREYgTUlNRSB0eXBlcy4KKyAgICBIYXNoU2V0PFN0cmluZywg
Q2FzZUZvbGRpbmdIYXNoPiBtaW1lVHlwZSA9IHBkZkFuZFBvc3RTY3JpcHRNSU1FVHlwZXMoKTsK
KyAgICBwYXJhbWV0ZXJzLm1pbWVUeXBlc1dpdGhDdXN0b21SZXByZXNlbnRhdGlvbi5hcHBlbmRS
YW5nZShtaW1lVHlwZS5iZWdpbigpLCBtaW1lVHlwZS5lbmQoKSk7CisKICNpZiBVU0UoQUNDRUxF
UkFURURfQ09NUE9TSVRJTkcpICYmIEhBVkUoSE9TVEVEX0NPUkVfQU5JTUFUSU9OKQogICAgIG1h
Y2hfcG9ydF90IHJlbmRlclNlcnZlclBvcnQgPSBXS0luaXRpYWxpemVSZW5kZXJTZXJ2ZXIoKTsK
ICAgICBpZiAocmVuZGVyU2VydmVyUG9ydCAhPSBNQUNIX1BPUlRfTlVMTCkKZGlmZiAtLWdpdCBh
L1dlYktpdDIvVUlQcm9jZXNzL3dpbi9XZWJWaWV3LmNwcCBiL1dlYktpdDIvVUlQcm9jZXNzL3dp
bi9XZWJWaWV3LmNwcAppbmRleCA1OGVlOWVlZDE2Nzc2MTQ3ZjU3ODdkNzBjOTI2M2Y5NjExM2Mw
OTdlLi5hODI3MDllYjliNmIxMDg4NTM0OTYzZTU3YjMwMTg2ODFlMzEyOGQwIDEwMDY0NAotLS0g
YS9XZWJLaXQyL1VJUHJvY2Vzcy93aW4vV2ViVmlldy5jcHAKKysrIGIvV2ViS2l0Mi9VSVByb2Nl
c3Mvd2luL1dlYlZpZXcuY3BwCkBAIC02NDIsNiArNjQyLDE0IEBAIHZvaWQgV2ViVmlldzo6c2V0
RmluZEluZGljYXRvcihQYXNzUmVmUHRyPEZpbmRJbmRpY2F0b3I+LCBib29sIGZhZGVPdXQpCiAg
ICAgLy8gRklYTUU6IEltcGxlbWVudC4KIH0KIAordm9pZCBXZWJWaWV3OjpkaWRDb21taXRMb2Fk
Rm9yTWFpbkZyYW1lKGJvb2wgdXNlQ3VzdG9tUmVwcmVzZW50YXRpb24pCit7Cit9CisKK3ZvaWQg
V2ViVmlldzo6ZGlkRmluaXNoTG9hZGluZ0RhdGFGb3JDdXN0b21SZXByZXNlbnRhdGlvbihjb25z
dCBDb3JlSVBDOjpEYXRhUmVmZXJlbmNlJikKK3sKK30KKwogdm9pZCBXZWJWaWV3OjpzZXRJc0lu
V2luZG93KGJvb2wgaXNJbldpbmRvdykKIHsKICAgICBtX3BhZ2UtPnNldElzSW5XaW5kb3coaXNJ
bldpbmRvdyk7CmRpZmYgLS1naXQgYS9XZWJLaXQyL1VJUHJvY2Vzcy93aW4vV2ViVmlldy5oIGIv
V2ViS2l0Mi9VSVByb2Nlc3Mvd2luL1dlYlZpZXcuaAppbmRleCBlMTk0NmVmN2VmMzRkNDhiNmFj
YWQ1Y2MwOTU4ODZlNjczOGMwY2I3Li45OTRmMjNjNTU2MmUxYzk2MDIyNWFiMTFiYTI4Y2I0NDQ2
ZDRkNjk0IDEwMDY0NAotLS0gYS9XZWJLaXQyL1VJUHJvY2Vzcy93aW4vV2ViVmlldy5oCisrKyBi
L1dlYktpdDIvVUlQcm9jZXNzL3dpbi9XZWJWaWV3LmgKQEAgLTExNiw2ICsxMTYsOSBAQCBwcml2
YXRlOgogICAgIHZvaWQgc3dpdGNoVG9EcmF3aW5nQXJlYVR5cGVJZk5lY2Vzc2FyeShEcmF3aW5n
QXJlYUluZm86OlR5cGUpOwogI2VuZGlmCiAKKyAgICB2b2lkIGRpZENvbW1pdExvYWRGb3JNYWlu
RnJhbWUoYm9vbCB1c2VDdXN0b21SZXByZXNlbnRhdGlvbik7CisgICAgdm9pZCBkaWRGaW5pc2hM
b2FkaW5nRGF0YUZvckN1c3RvbVJlcHJlc2VudGF0aW9uKGNvbnN0IENvcmVJUEM6OkRhdGFSZWZl
cmVuY2UmKTsKKwogICAgIHZpcnR1YWwgSFdORCBuYXRpdmVXaW5kb3coKTsKIAogICAgIC8vIFdl
YkNvcmU6OldpbmRvd01lc3NhZ2VMaXN0ZW5lcgpkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggOTdj
NWEwNGM0NWY5ZTdhZTk5YjM0NDZiZDRhNDJlYjQ3ODlmNjdlYy4uOTE3OGQyMDgzOWUyYTQwZGQ5
NTFmODlkZWExOTg5MzdjMTA4MjZlYyAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAorKysgYi9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCkBAIC0yOSw2ICsy
OSw3IEBACiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKIAogI2luY2x1ZGUgIkF1dGhlbnRp
Y2F0aW9uTWFuYWdlci5oIgorI2luY2x1ZGUgIkRhdGFSZWZlcmVuY2UuaCIKICNpbmNsdWRlICJJ
bmplY3RlZEJ1bmRsZVVzZXJNZXNzYWdlQ29kZXJzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1DZXJ0
aWZpY2F0ZUluZm8uaCIKICNpbmNsdWRlICJQbHVnaW5WaWV3LmgiCkBAIC03Myw2ICs3NCw3IEBA
IG5hbWVzcGFjZSBXZWJLaXQgewogV2ViRnJhbWVMb2FkZXJDbGllbnQ6OldlYkZyYW1lTG9hZGVy
Q2xpZW50KFdlYkZyYW1lKiBmcmFtZSkKICAgICA6IG1fZnJhbWUoZnJhbWUpCiAgICAgLCBtX2hh
c1NlbnRSZXNwb25zZVRvUGx1Z2luVmlldyhmYWxzZSkKKyAgICAsIG1fZnJhbWVIYXNDdXN0b21S
ZXByZXNlbnRhdGlvbihmYWxzZSkKIHsKIH0KIApAQCAtOTAsNyArOTIsNyBAQCB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpmcmFtZUxvYWRlckRlc3Ryb3llZCgpCiAKIGJvb2wgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6Omhhc0hUTUxWaWV3KCkgY29uc3QKIHsKLSAgICByZXR1cm4gdHJ1ZTsKKyAg
ICByZXR1cm4gIW1fZnJhbWVIYXNDdXN0b21SZXByZXNlbnRhdGlvbjsKIH0KIAogYm9vbCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6aGFzV2ViVmlldygpIGNvbnN0CkBAIC0zOTYsNyArMzk4LDcgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRDb21taXRMb2FkKCkKICAgICB3
ZWJQYWdlLT5zYW5kYm94RXh0ZW5zaW9uVHJhY2tlcigpLmRpZENvbW1pdFByb3Zpc2lvbmFsTG9h
ZChtX2ZyYW1lKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNzLgotICAgIHdlYlBhZ2Ut
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkQ29tbWl0TG9hZEZvckZyYW1lKG1fZnJh
bWUtPmZyYW1lSUQoKSwgcmVzcG9uc2UubWltZVR5cGUoKSwgUGxhdGZvcm1DZXJ0aWZpY2F0ZUlu
Zm8ocmVzcG9uc2UpLCBJbmplY3RlZEJ1bmRsZVVzZXJNZXNzYWdlRW5jb2Rlcih1c2VyRGF0YS5n
ZXQoKSkpKTsKKyAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZENv
bW1pdExvYWRGb3JGcmFtZShtX2ZyYW1lLT5mcmFtZUlEKCksIHJlc3BvbnNlLm1pbWVUeXBlKCks
IG1fZnJhbWVIYXNDdXN0b21SZXByZXNlbnRhdGlvbiwgUGxhdGZvcm1DZXJ0aWZpY2F0ZUluZm8o
cmVzcG9uc2UpLCBJbmplY3RlZEJ1bmRsZVVzZXJNZXNzYWdlRW5jb2Rlcih1c2VyRGF0YS5nZXQo
KSkpKTsKIH0KIAogdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsUHJv
dmlzaW9uYWxMb2FkKGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQpAQCAtNzQ3LDYgKzc0OSwx
MCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRDaGFuZ2VUaXRsZShEb2N1bWVudExv
YWRlciopCiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbW1pdHRlZExvYWQoRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCkKIHsKKyAgICAv
LyBJZiB3ZSdyZSBsb2FkaW5nIGEgY3VzdG9tIHJlcHJlc2VudGF0aW9uLCB3ZSBkb24ndCB3YW50
IHRvIGhhbmQgb2ZmIHRoZSBkYXRhIHRvIFdlYkNvcmUuCisgICAgaWYgKG1fZnJhbWVIYXNDdXN0
b21SZXByZXNlbnRhdGlvbikKKyAgICAgICAgcmV0dXJuOworCiAgICAgaWYgKCFtX3BsdWdpblZp
ZXcpCiAgICAgICAgIGxvYWRlci0+Y29tbWl0RGF0YShkYXRhLCBsZW5ndGgpOwogCkBAIC03NzUs
NiArNzgxLDE4IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmZpbmlzaGVkTG9hZGluZyhE
b2N1bWVudExvYWRlciogbG9hZGVyKQogewogICAgIGlmICghbV9wbHVnaW5WaWV3KSB7CiAgICAg
ICAgIGNvbW1pdHRlZExvYWQobG9hZGVyLCAwLCAwKTsKKworICAgICAgICBpZiAobV9mcmFtZUhh
c0N1c3RvbVJlcHJlc2VudGF0aW9uKSB7CisgICAgICAgICAgICBXZWJQYWdlKiB3ZWJQYWdlID0g
bV9mcmFtZS0+cGFnZSgpOworICAgICAgICAgICAgaWYgKCF3ZWJQYWdlKQorICAgICAgICAgICAg
ICAgIHJldHVybjsKKworICAgICAgICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gbWFpblJlc291
cmNlRGF0YSA9IGxvYWRlci0+bWFpblJlc291cmNlRGF0YSgpOworICAgICAgICAgICAgQ29yZUlQ
Qzo6RGF0YVJlZmVyZW5jZSBkYXRhUmVmZXJlbmNlKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWlu
dDhfdCo+KG1haW5SZXNvdXJjZURhdGEgPyBtYWluUmVzb3VyY2VEYXRhLT5kYXRhKCkgOiAwKSwg
bWFpblJlc291cmNlRGF0YSA/IG1haW5SZXNvdXJjZURhdGEtPnNpemUoKSA6IDApOworICAgICAg
ICAgICAgCisgICAgICAgICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkRpZEZpbmlzaExvYWRpbmdEYXRhRm9yQ3VzdG9tUmVwcmVzZW50YXRpb24oZGF0YVJlZmVyZW5j
ZSkpOworICAgICAgICB9CisKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMTAxMywxMiAr
MTAzMSwxMiBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojp0cmFuc2l0aW9uVG9Db21taXR0
ZWRGcm9tQ2FjaGVkRnJhbWUoQ2FjaGVkRnJhbWUqKQogCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50Ojp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkKIHsKLSNpZiBFTkFCTEUoVElM
RURfQkFDS0lOR19TVE9SRSkKICAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgp
OwogICAgIGJvb2wgaXNNYWluRnJhbWUgPSB3ZWJQYWdlLT5tYWluRnJhbWUoKSA9PSBtX2ZyYW1l
OwogCi0gICAgSW50U2l6ZSBjdXJyZW50VmlzaWJsZUNvbnRlbnRTaXplID0gbV9mcmFtZS0+Y29y
ZUZyYW1lKCktPnZpZXcoKSA/IG1fZnJhbWUtPmNvcmVGcmFtZSgpLT52aWV3KCktPmFjdHVhbFZp
c2libGVDb250ZW50UmVjdCgpLnNpemUoKSA6IEludFNpemUoKTsKKyNpZiBFTkFCTEUoVElMRURf
QkFDS0lOR19TVE9SRSkKIAorICAgIEludFNpemUgY3VycmVudFZpc2libGVDb250ZW50U2l6ZSA9
IG1fZnJhbWUtPmNvcmVGcmFtZSgpLT52aWV3KCkgPyBtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+dmll
dygpLT5hY3R1YWxWaXNpYmxlQ29udGVudFJlY3QoKS5zaXplKCkgOiBJbnRTaXplKCk7CiAgICAg
bV9mcmFtZS0+Y29yZUZyYW1lKCktPmNyZWF0ZVZpZXcobV9mcmFtZS0+cGFnZSgpLT5zaXplKCks
IENvbG9yOjp3aGl0ZSwgZmFsc2UsIHdlYlBhZ2UtPnJlc2l6ZXNUb0NvbnRlbnRzTGF5b3V0U2l6
ZSgpLCBpc01haW5GcmFtZSAmJiB3ZWJQYWdlLT5yZXNpemVzVG9Db250ZW50c0VuYWJsZWQoKSk7
CiAKICAgICBpZiAoaXNNYWluRnJhbWUgJiYgd2ViUGFnZS0+cmVzaXplc1RvQ29udGVudHNFbmFi
bGVkKCkpIHsKQEAgLTEwMjksNiArMTA0Nyw5IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UoKQogICAgIC8vIFRoZSBIaXN0b3J5Q29u
dHJvbGxlciB3aWxsIHVwZGF0ZSB0aGUgc2Nyb2xsIHBvc2l0aW9uIGxhdGVyIGlmIG5lZWRlZC4K
ICAgICBtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+dmlldygpLT5zZXRBY3R1YWxWaXNpYmxlQ29udGVu
dFJlY3QoSW50UmVjdChJbnRQb2ludDo6emVybygpLCBjdXJyZW50VmlzaWJsZUNvbnRlbnRTaXpl
KSk7CiAjZWxzZQorICAgIGNvbnN0IFN0cmluZyYgbWltZVR5cGUgPSBtX2ZyYW1lLT5jb3JlRnJh
bWUoKS0+bG9hZGVyKCktPmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCkubWltZVR5cGUoKTsK
KyAgICBtX2ZyYW1lSGFzQ3VzdG9tUmVwcmVzZW50YXRpb24gPSBpc01haW5GcmFtZSAmJiBXZWJQ
cm9jZXNzOjpzaGFyZWQoKS5zaG91bGRVc2VDdXN0b21SZXByZXNlbnRhdGlvbkZvck1JTUVUeXBl
KG1pbWVUeXBlKTsKKwogICAgIG1fZnJhbWUtPmNvcmVGcmFtZSgpLT5jcmVhdGVWaWV3KG1fZnJh
bWUtPnBhZ2UoKS0+c2l6ZSgpLCBDb2xvcjo6d2hpdGUsIGZhbHNlLCBJbnRTaXplKCksIGZhbHNl
KTsKICNlbmRpZgogfQpkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCBhYjAyODhjNmEwOTgxMWQ4ZDg2NDc3
NzFmOWJmYWZkMjFhZTI1NTRlLi4xOTFhZWI3YWQ5ZWZlMGFmM2NlNzY4ODk3OTBhYzU1OWNjMjNl
Yjg3IDEwMDY0NAotLS0gYS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQuaAorKysgYi9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtNDAsNiArNDAsOCBAQCBwdWJsaWM6CiAKICAgICBX
ZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJldHVybiBtX2ZyYW1lOyB9CiAKKyAgICBib29s
IGZyYW1lSGFzQ3VzdG9tUmVwcmVzZW50YXRpb24oKSBjb25zdCB7IHJldHVybiBtX2ZyYW1lSGFz
Q3VzdG9tUmVwcmVzZW50YXRpb247IH0KKwogcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgZnJh
bWVMb2FkZXJEZXN0cm95ZWQoKTsKIApAQCAtMjEyLDYgKzIxNCw3IEBAIHByaXZhdGU6CiAgICAg
V2ViRnJhbWUqIG1fZnJhbWU7CiAgICAgUmVmUHRyPFBsdWdpblZpZXc+IG1fcGx1Z2luVmlldzsK
ICAgICBib29sIG1faGFzU2VudFJlc3BvbnNlVG9QbHVnaW5WaWV3OworICAgIGJvb2wgbV9mcmFt
ZUhhc0N1c3RvbVJlcHJlc2VudGF0aW9uOwogfTsKIAogdWludDMyX3QgbW9kaWZpZXJzRm9yTmF2
aWdhdGlvbkFjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJik7CmRpZmYgLS1n
aXQgYS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvQ2h1bmtlZFVwZGF0ZURyYXdpbmdB
cmVhTWFjLmNwcCBiL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9DaHVua2VkVXBkYXRl
RHJhd2luZ0FyZWFNYWMuY3BwCmluZGV4IGE1OTUyMWEyZTA1MTRmZjYwODgxOWM5YWM5OTg1YjY1
ZmM3NmE1ZTEuLjhmYjgyYzg3NjZiM2UwYjU0YmZiZDg1NjRkNWZjMDk0MzkzNTMzYzQgMTAwNjQ0
Ci0tLSBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9DaHVua2VkVXBkYXRlRHJhd2lu
Z0FyZWFNYWMuY3BwCisrKyBiL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9DaHVua2Vk
VXBkYXRlRHJhd2luZ0FyZWFNYWMuY3BwCkBAIC0yNiw3ICsyNiwxMCBAQAogI2luY2x1ZGUgIkNo
dW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5oIgogCiAjaW5jbHVkZSAiVXBkYXRlQ2h1bmsuaCIKKyNp
bmNsdWRlICJXZWJGcmFtZS5oIgogI2luY2x1ZGUgIldlYlBhZ2UuaCIKKyNpbmNsdWRlICJXZWJG
cmFtZUxvYWRlckNsaWVudC5oIgorI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWUuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dC5oPgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4K
IApAQCAtMzYsNiArMzksMTAgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIHZvaWQgQ2h1bmtlZFVw
ZGF0ZURyYXdpbmdBcmVhOjpwYWludEludG9VcGRhdGVDaHVuayhVcGRhdGVDaHVuayogdXBkYXRl
Q2h1bmspCiB7CisgICAgLy8gRklYTUU6IEl0IHdvdWxkIGJlIGJldHRlciBpZiB3ZSBjb3VsZCBh
dm9pZCBwYWludGluZyBhbHRvZ2V0aGVyIHdoZW4gdGhlcmUgaXMgYSBjdXN0b20gcmVwcmVzZW50
YXRpb24uCisgICAgaWYgKHN0YXRpY19jYXN0PFdlYkZyYW1lTG9hZGVyQ2xpZW50Kj4obV93ZWJQ
YWdlLT5tYWluRnJhbWUoKS0+Y29yZUZyYW1lKCktPmxvYWRlcigpLT5jbGllbnQoKSktPmZyYW1l
SGFzQ3VzdG9tUmVwcmVzZW50YXRpb24oKSkKKyAgICAgICAgcmV0dXJuOworCiAgICAgUmV0YWlu
UHRyPENHQ29sb3JTcGFjZVJlZj4gY29sb3JTcGFjZShBZG9wdENGLCBDR0NvbG9yU3BhY2VDcmVh
dGVEZXZpY2VSR0IoKSk7CiAgICAgUmV0YWluUHRyPENHQ29udGV4dFJlZj4gYml0bWFwQ29udGV4
dChBZG9wdENGLCBDR0JpdG1hcENvbnRleHRDcmVhdGUodXBkYXRlQ2h1bmstPmRhdGEoKSwgdXBk
YXRlQ2h1bmstPnJlY3QoKS53aWR0aCgpLCB1cGRhdGVDaHVuay0+cmVjdCgpLmhlaWdodCgpLCA4
LCB1cGRhdGVDaHVuay0+cmVjdCgpLndpZHRoKCkgKiA0LCBjb2xvclNwYWNlLmdldCgpLCBrQ0dJ
bWFnZUFscGhhUHJlbXVsdGlwbGllZEZpcnN0IHwga0NHQml0bWFwQnl0ZU9yZGVyMzJIb3N0KSk7
CiAKZGlmZiAtLWdpdCBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcCBiL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAppbmRleCAzODlmOTk1ZmZlZTg5OGZjOTRhNTdi
ODRhMTA2YTE3MDk0ZGIwMGE0Li41MDQ3MDg2YjI2ZjdiYTM1YzA3NzJlZGFmNjRhNjY4ZDU3YjEx
MGY3IDEwMDY0NAotLS0gYS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKKysrIGIv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCkBAIC0xNjQsNiArMTY0LDkgQEAgdm9p
ZCBXZWJQcm9jZXNzOjppbml0aWFsaXplV2ViUHJvY2Vzcyhjb25zdCBXZWJQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzJiBwYXJhbWUKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHBhcmFtZXRl
cnMudXJsU2NoZW1lc0ZvcldoaWNoRG9tYWluUmVsYXhhdGlvbklzRm9yYmlkZGVuLnNpemUoKTsg
KytpKQogICAgICAgICBzZXREb21haW5SZWxheGF0aW9uRm9yYmlkZGVuRm9yVVJMU2NoZW1lKHBh
cmFtZXRlcnMudXJsU2NoZW1lc0ZvcldoaWNoRG9tYWluUmVsYXhhdGlvbklzRm9yYmlkZGVuW2ld
KTsKIAorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcGFyYW1ldGVycy5taW1lVHlwZXNXaXRo
Q3VzdG9tUmVwcmVzZW50YXRpb24uc2l6ZSgpOyArK2kpCisgICAgICAgIG1fbWltZVR5cGVzV2l0
aEN1c3RvbVJlcHJlc2VudGF0aW9ucy5hZGQocGFyYW1ldGVycy5taW1lVHlwZXNXaXRoQ3VzdG9t
UmVwcmVzZW50YXRpb25baV0pOworCiAgICAgaWYgKHBhcmFtZXRlcnMuY2xlYXJSZXNvdXJjZUNh
Y2hlcykKICAgICAgICAgY2xlYXJSZXNvdXJjZUNhY2hlcygpOwogICAgIGlmIChwYXJhbWV0ZXJz
LmNsZWFyQXBwbGljYXRpb25DYWNoZSkKZGlmZiAtLWdpdCBhL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQcm9jZXNzLmggYi9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCmluZGV4IDU2ZWU1
NDNkNjY5N2VlNzIwZmNiNTkyYzE5ZDU2NDU2ZTI0NDhhMTUuLjRjYmE2MzBiNmEyMDAyZGQ4ZDlj
MTE4MmU1NWY2ZWI2NzhjYThiM2UgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
cm9jZXNzLmgKKysrIGIvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaApAQCAtMzUsNiAr
MzUsNyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvTGlua0hhc2guaD4KICNpbmNsdWRlIDx3dGYvRm9y
d2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8d3RmL0hhc2hTZXQu
aD4KIAogI2lmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRlICJNYWNoUG9ydC5oIgpAQCAtOTAsNiAr
OTEsOCBAQCBwdWJsaWM6CiAgICAgLy8gV2lsbCBzaHV0IGRvd24gdGhlIHdlYiBwcm9jZXNzIGlm
IHRoZXJlIGFyZSBubyBsaXZlIHBhZ2VzIG9yIGRvd25sb2Fkcy4KICAgICB2b2lkIHNodXRkb3du
SWZQb3NzaWJsZSgpOwogCisgICAgYm9vbCBzaG91bGRVc2VDdXN0b21SZXByZXNlbnRhdGlvbkZv
ck1JTUVUeXBlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0IHsgcmV0dXJuIG1fbWltZVR5
cGVzV2l0aEN1c3RvbVJlcHJlc2VudGF0aW9ucy5jb250YWlucyhtaW1lVHlwZSk7IH0KKwogcHJp
dmF0ZToKICAgICBXZWJQcm9jZXNzKCk7CiAKQEAgLTE0Niw2ICsxNDksOCBAQCBwcml2YXRlOgog
I2VuZGlmCiAKICAgICBIYXNoTWFwPHVpbnQ2NF90LCBXZWJGcmFtZSo+IG1fZnJhbWVNYXA7CisK
KyAgICBIYXNoU2V0PFN0cmluZywgQ2FzZUZvbGRpbmdIYXNoPiBtX21pbWVUeXBlc1dpdGhDdXN0
b21SZXByZXNlbnRhdGlvbnM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQK
</data>
<flag name="review"
          id="66965"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>