<?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>66899</bug_id>
          
          <creation_ts>2011-08-24 15:00:30 -0700</creation_ts>
          <short_desc>Remove some dead Autofill code</short_desc>
          <delta_ts>2011-08-24 16:02:15 -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>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ilya Sherman">isherman</reporter>
          <assigned_to name="Ilya Sherman">isherman</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>isherman</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>456445</commentid>
    <comment_count>0</comment_count>
    <who name="Ilya Sherman">isherman</who>
    <bug_when>2011-08-24 15:00:30 -0700</bug_when>
    <thetext>Remove some dead Autofill code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>456447</commentid>
    <comment_count>1</comment_count>
      <attachid>105079</attachid>
    <who name="Ilya Sherman">isherman</who>
    <bug_when>2011-08-24 15:02:05 -0700</bug_when>
    <thetext>Created attachment 105079
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>456483</commentid>
    <comment_count>2</comment_count>
      <attachid>105079</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-08-24 15:47:02 -0700</bug_when>
    <thetext>Comment on attachment 105079
Patch

I love deleting code!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>456505</commentid>
    <comment_count>3</comment_count>
      <attachid>105079</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-24 16:02:10 -0700</bug_when>
    <thetext>Comment on attachment 105079
Patch

Clearing flags on attachment: 105079

Committed r93747: &lt;http://trac.webkit.org/changeset/93747&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>456506</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-24 16:02:15 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>105079</attachid>
            <date>2011-08-24 15:02:05 -0700</date>
            <delta_ts>2011-08-24 16:02:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-66899-20110824150204.patch</filename>
            <type>text/plain</type>
            <size>27451</size>
            <attacher name="Ilya Sherman">isherman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTM1MDYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
ODQ4MGY1NGIwNTZiZjk2ZWNmYjkyMzA1NWFjZjExMGJjMjRmMzRlNi4uYmViY2U3ZWQ3NjY3NmEx
ZmZhOWE3MDVkMzhjNzBlZjVmYWIwM2UwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwzMyBAQAorMjAxMS0wOC0yNCAgSWx5YSBTaGVybWFuICA8aXNoZXJtYW5AY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFJlbW92ZSBzb21lIGRlYWQgQXV0b2ZpbGwgY29kZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY4OTkKKyAgICAgICAg
aHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9NTE2NDQK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYktp
dC5neXA6CisgICAgICAgICogcHVibGljL1dlYkF1dG9maWxsQ2xpZW50Lmg6CisgICAgICAgICog
cHVibGljL1dlYkZyYW1lLmg6CisgICAgICAgICogcHVibGljL1dlYlBhc3N3b3JkQXV0b2NvbXBs
ZXRlTGlzdGVuZXIuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBzcmMvRWRpdG9yQ2xpZW50SW1wbC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OkVkaXRvckNsaWVudEltcGw6OkVkaXRvckNsaWVudEltcGwp
OgorICAgICAgICAoV2ViS2l0OjpFZGl0b3JDbGllbnRJbXBsOjpoYW5kbGVLZXlib2FyZEV2ZW50
KToKKyAgICAgICAgKFdlYktpdDo6RWRpdG9yQ2xpZW50SW1wbDo6dGV4dEZpZWxkRGlkQmVnaW5F
ZGl0aW5nKToKKyAgICAgICAgKFdlYktpdDo6RWRpdG9yQ2xpZW50SW1wbDo6dGV4dEZpZWxkRGlk
RW5kRWRpdGluZyk6CisgICAgICAgIChXZWJLaXQ6OkVkaXRvckNsaWVudEltcGw6OnRleHREaWRD
aGFuZ2VJblRleHRGaWVsZCk6CisgICAgICAgIChXZWJLaXQ6OkVkaXRvckNsaWVudEltcGw6OmRv
VGV4dEZpZWxkQ29tbWFuZEZyb21FdmVudCk6CisgICAgICAgICogc3JjL0VkaXRvckNsaWVudElt
cGwuaDoKKyAgICAgICAgKiBzcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6RnJhbWVMb2FkZXJDbGllbnRJbXBsOjpkaXNwYXRjaERpZEZpbmlzaERvY3VtZW50
TG9hZCk6CisgICAgICAgICogc3JjL1dlYkZyYW1lSW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6
OmZyYW1lQ29udGVudEFzUGxhaW5UZXh0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBs
OjpzY29wZVN0cmluZ01hdGNoZXMpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6On5X
ZWJGcmFtZUltcGwpOgorICAgICAgICAqIHNyYy9XZWJGcmFtZUltcGwuaDoKKyAgICAgICAgKiBz
cmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6bW91c2VE
b3duKToKKwogMjAxMS0wOC0yMCAgTmVib2pzYSBDaXJpYyAgPGNpcmFAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIEFkZCBkZXBlbmRlbmN5IG9uIHY4LWkxOG4gbGlicmFyeS4gV2UgdXNlZCB2OCBy
ZXBvc2l0b3J5IGJlZm9yZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vV2Vi
S2l0Lmd5cCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cAppbmRleCA5NGFkMWZj
MTlhN2VkMDA4M2VmYWQzYjkzZWVmM2JlYjE4MDI5YzkwLi5iNzhmNjAxZWExN2ViZjM3OTlmNDE5
OTQwODRjZjY0MzY3NzgwMjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL1dl
YktpdC5neXAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9XZWJLaXQuZ3lwCkBAIC0yMzIs
NyArMjMyLDYgQEAKICAgICAgICAgICAgICAgICAncHVibGljL1dlYlBhZ2VTZXJpYWxpemVyLmgn
LAogICAgICAgICAgICAgICAgICdwdWJsaWMvV2ViUGFnZVNlcmlhbGl6ZXJDbGllbnQuaCcsCiAg
ICAgICAgICAgICAgICAgJ3B1YmxpYy9XZWJQYWdlVmlzaWJpbGl0eVN0YXRlLmgnLAotICAgICAg
ICAgICAgICAgICdwdWJsaWMvV2ViUGFzc3dvcmRBdXRvY29tcGxldGVMaXN0ZW5lci5oJywKICAg
ICAgICAgICAgICAgICAncHVibGljL1dlYlBhc3N3b3JkRm9ybURhdGEuaCcsCiAgICAgICAgICAg
ICAgICAgJ3B1YmxpYy9XZWJQZXJmb3JtYW5jZS5oJywKICAgICAgICAgICAgICAgICAncHVibGlj
L1dlYlBlcm1pc3Npb25DbGllbnQuaCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3B1YmxpYy9XZWJBdXRvZmlsbENsaWVudC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9w
dWJsaWMvV2ViQXV0b2ZpbGxDbGllbnQuaAppbmRleCAxZWI3Y2I2ZjVmYjhhOGE5NzIxZDllNTU4
YTA3MzQxOTFhZDZhNDdlLi41ODI0ZjE3MGEzOGNmZjdmZWJjNjFmZmEzYzUxYzhlMzc4NTJkMDg1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJBdXRvZmlsbENs
aWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkF1dG9maWxsQ2xp
ZW50LmgKQEAgLTcxLDcgKzcxLDYgQEAgcHVibGljOgogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFdlYlN0cmluZyYgdmFsdWUpIHsgfQogCiAgICAg
Ly8gVGhlc2UgbWV0aG9kcyBhcmUgY2FsbGVkIHdoZW4gdGhlIHVzZXJzIGVkaXRzIGEgdGV4dC1m
aWVsZC4KLSAgICB2aXJ0dWFsIHZvaWQgdGV4dEZpZWxkRGlkQmVnaW5FZGl0aW5nKGNvbnN0IFdl
YklucHV0RWxlbWVudCYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCB0ZXh0RmllbGREaWRFbmRFZGl0
aW5nKGNvbnN0IFdlYklucHV0RWxlbWVudCYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCB0ZXh0Rmll
bGREaWRDaGFuZ2UoY29uc3QgV2ViSW5wdXRFbGVtZW50JikgeyB9CiAgICAgdmlydHVhbCB2b2lk
IHRleHRGaWVsZERpZFJlY2VpdmVLZXlEb3duKGNvbnN0IFdlYklucHV0RWxlbWVudCYsIGNvbnN0
IFdlYktleWJvYXJkRXZlbnQmKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vcHVibGljL1dlYkZyYW1lLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJG
cmFtZS5oCmluZGV4IDU0MTI3NjRkMjdlMTE1OWJmNzgwYTY3NjJiZDkyYmQ3Y2M2MmVlNmQuLjI2
ZmI2N2Y2NWNjZDhhZDg4OTUwNDU2M2Q4ZWEwMmI1YzA4NGFiMTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lLmgKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9wdWJsaWMvV2ViRnJhbWUuaApAQCAtNTksNyArNTksNiBAQCBjbGFzcyBXZWJFbGVt
ZW50OwogY2xhc3MgV2ViRm9ybUVsZW1lbnQ7CiBjbGFzcyBXZWJIaXN0b3J5SXRlbTsKIGNsYXNz
IFdlYklucHV0RWxlbWVudDsKLWNsYXNzIFdlYlBhc3N3b3JkQXV0b2NvbXBsZXRlTGlzdGVuZXI7
CiBjbGFzcyBXZWJQZXJmb3JtYW5jZTsKIGNsYXNzIFdlYlJhbmdlOwogY2xhc3MgV2ViU2VjdXJp
dHlPcmlnaW47CkBAIC01MjIsMjQgKzUyMSw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
cmVzZXRNYXRjaENvdW50KCkgPSAwOwogCiAKLSAgICAvLyBQYXNzd29yZCBhdXRvY29tcGxldGlv
biAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotICAgIC8v
IFJlZ2lzdGVycyBhIGxpc3RlbmVyIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIgbmFtZSBpbnB1dCBl
bGVtZW50LiBUaGUKLSAgICAvLyBsaXN0ZW5lciB3aWxsIHJlY2VpdmUgbm90aWZpY2F0aW9ucyBm
b3IgYmx1ciBhbmQgd2hlbiBhdXRvY29tcGxldGUKLSAgICAvLyBzaG91bGQgYmUgdHJpZ2dlcmVk
LgotICAgIC8vIEFuIGVsZW1lbnQgY2FuIGhhdmUgb25seSBvbmUgbGlzdGVuZXIuIElmIGEgbGlz
dGVuZXIgYWxyZWFkeSBleGlzdHMsCi0gICAgLy8gdGhpcyBtZXRob2QgcmV0dXJucyBmYWxzZSBh
bmQgZG9lcyBub3QgYWRkIHRoZSBuZXcgb25lLgotICAgIC8vIEVpdGhlciB3YXksIHRoZSBXZWJG
cmFtZSBiZWNvbWVzIHRoZSBvd25lciBvZiB0aGUgcGFzc2VkIGxpc3RlbmVyLgotICAgIHZpcnR1
YWwgYm9vbCByZWdpc3RlclBhc3N3b3JkTGlzdGVuZXIoCi0gICAgICAgIFdlYklucHV0RWxlbWVu
dCwKLSAgICAgICAgV2ViUGFzc3dvcmRBdXRvY29tcGxldGVMaXN0ZW5lciopID0gMDsKLQotICAg
IC8vIERpc3BhdGNoZXMgYW4gQXV0b2NvbXBsZXRpb24gbm90aWZpY2F0aW9uIHRvIHJlZ2lzdGVy
ZWQgbGlzdGVuZXIgaWYgb25lCi0gICAgLy8gZXhpc3RzIHRoYXQgaXMgcmVnaXN0ZXJlZCBhZ2Fp
bnN0IHRoZSBXZWJJbnB1dEVsZW1lbnQgc3BlY2lmaWVkLgotICAgIHZpcnR1YWwgdm9pZCBub3Rp
Zml5UGFzc3dvcmRMaXN0ZW5lck9mQXV0b2NvbXBsZXRlKAotICAgICAgICBjb25zdCBXZWJJbnB1
dEVsZW1lbnQmKSA9IDA7Ci0KLQogICAgIC8vIFV0aWxpdHkgLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiAgICAgLy8gUmV0dXJu
cyB0aGUgY29udGVudHMgb2YgdGhpcyBmcmFtZSBhcyBhIHN0cmluZy4gIElmIHRoZSB0ZXh0IGlz
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJQYXNzd29yZEF1
dG9jb21wbGV0ZUxpc3RlbmVyLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJQ
YXNzd29yZEF1dG9jb21wbGV0ZUxpc3RlbmVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGZkYzg0NzZjZGE0OGMyNTRjZjFlMTE2ZjYyMzAwNzEyNWQyN2MzNWQuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViUGFzc3dvcmRBdXRvY29tcGxldGVMaXN0ZW5lci5oCisrKyAvZGV2L251bGwK
QEAgLTEsNTIgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBHb29nbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQot
ICogbWV0OgotICoKLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyCi0gKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBu
YW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQot
ICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwK
LSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViUGFzc3dvcmRBdXRvY29tcGxldGVMaXN0ZW5lcl9o
Ci0jZGVmaW5lIFdlYlBhc3N3b3JkQXV0b2NvbXBsZXRlTGlzdGVuZXJfaAotCi1uYW1lc3BhY2Ug
V2ViS2l0IHsKLWNsYXNzIFdlYlN0cmluZzsKLQotY2xhc3MgV2ViUGFzc3dvcmRBdXRvY29tcGxl
dGVMaXN0ZW5lciB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+V2ViUGFzc3dvcmRBdXRvY29tcGxl
dGVMaXN0ZW5lcigpIHt9Ci0KLSAgICB2aXJ0dWFsIHZvaWQgZGlkQmx1cklucHV0RWxlbWVudCgK
LSAgICAgICAgY29uc3QgV2ViU3RyaW5nJiB1c2VySW5wdXQpID0gMDsKLQotICAgIHZpcnR1YWwg
dm9pZCBwZXJmb3JtSW5saW5lQXV0b2NvbXBsZXRlKAotICAgICAgICBjb25zdCBXZWJTdHJpbmcm
IHVzZXJJbnB1dCwKLSAgICAgICAgYm9vbCBiYWNrU3BhY2VPckRlbGV0ZVByZXNzZWQsCi0gICAg
ICAgIGJvb2wgc2hvd1N1Z2dlc3Rpb25zKSA9IDA7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJL
aXQKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9FZGl0
b3JDbGllbnRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0VkaXRvckNsaWVu
dEltcGwuY3BwCmluZGV4IGNhOGQ0Zjk5ZTk3YzE4Y2NmNjEwZDZiZjJkYmI5MjE0MTM3M2E3ZTEu
LmVmMzA1Y2MyZjJmMDJkZjA0YzliZTVkNzFlY2MyOGIwZWY0MWIxYWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0VkaXRvckNsaWVudEltcGwuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL0VkaXRvckNsaWVudEltcGwuY3BwCkBAIC01Miw3ICs1Miw2
IEBACiAjaW5jbHVkZSAiV2ViSW5wdXRFbGVtZW50LmgiCiAjaW5jbHVkZSAiV2ViSW5wdXRFdmVu
dENvbnZlcnNpb24uaCIKICNpbmNsdWRlICJXZWJOb2RlLmgiCi0jaW5jbHVkZSAiV2ViUGFzc3dv
cmRBdXRvY29tcGxldGVMaXN0ZW5lci5oIgogI2luY2x1ZGUgIldlYlBlcm1pc3Npb25DbGllbnQu
aCIKICNpbmNsdWRlICJXZWJSYW5nZS5oIgogI2luY2x1ZGUgIldlYlNwZWxsQ2hlY2tDbGllbnQu
aCIKQEAgLTcxLDE2ICs3MCwxMCBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIC8vIGludG8gYSBzaW5n
bGUgYWN0aW9uLgogc3RhdGljIGNvbnN0IHNpemVfdCBtYXhpbXVtVW5kb1N0YWNrRGVwdGggPSAx
MDAwOwogCi0vLyBUaGUgc2l6ZSBhYm92ZSB3aGljaCB3ZSBzdG9wIHRyaWdnZXJpbmcgYXV0b2Zp
bGwgZm9yIGFuIGlucHV0IHRleHQgZmllbGQKLS8vIChzbyB0byBhdm9pZCBzZW5kaW5nIGxvbmcg
c3RyaW5ncyB0aHJvdWdoIElQQykuCi1zdGF0aWMgY29uc3Qgc2l6ZV90IG1heGltdW1UZXh0U2l6
ZUZvckF1dG9maWxsID0gMTAwMDsKLQogRWRpdG9yQ2xpZW50SW1wbDo6RWRpdG9yQ2xpZW50SW1w
bChXZWJWaWV3SW1wbCogd2VidmlldykKICAgICA6IG1fd2ViVmlldyh3ZWJ2aWV3KQogICAgICwg
bV9pblJlZG8oZmFsc2UpCi0gICAgLCBtX2JhY2tzcGFjZU9yRGVsZXRlUHJlc3NlZChmYWxzZSkK
ICAgICAsIG1fc3BlbGxDaGVja1RoaXNGaWVsZFN0YXR1cyhTcGVsbENoZWNrQXV0b21hdGljKQot
ICAgICwgbV9hdXRvZmlsbFRpbWVyKHRoaXMsICZFZGl0b3JDbGllbnRJbXBsOjpkb0F1dG9maWxs
KQogewogfQogCkBAIC02NDMsMTIgKzYzNiw2IEBAIGJvb2wgRWRpdG9yQ2xpZW50SW1wbDo6aGFu
ZGxlRWRpdGluZ0tleWJvYXJkRXZlbnQoS2V5Ym9hcmRFdmVudCogZXZ0KQogCiB2b2lkIEVkaXRv
ckNsaWVudEltcGw6OmhhbmRsZUtleWJvYXJkRXZlbnQoS2V5Ym9hcmRFdmVudCogZXZ0KQogewot
ICAgIGlmIChldnQtPmtleUNvZGUoKSA9PSBWS0VZX0RPV04KLSAgICAgICAgfHwgZXZ0LT5rZXlD
b2RlKCkgPT0gVktFWV9VUCkgewotICAgICAgICBBU1NFUlQoZXZ0LT50YXJnZXQoKS0+dG9Ob2Rl
KCkpOwotICAgICAgICBzaG93Rm9ybUF1dG9maWxsRm9yTm9kZShldnQtPnRhcmdldCgpLT50b05v
ZGUoKSk7Ci0gICAgfQotCiAgICAgLy8gR2l2ZSB0aGUgZW1iZWRkZXIgYSBjaGFuY2UgdG8gaGFu
ZGxlIHRoZSBrZXlib2FyZCBldmVudC4KICAgICBpZiAoKG1fd2ViVmlldy0+Y2xpZW50KCkKICAg
ICAgICAgICYmIG1fd2ViVmlldy0+Y2xpZW50KCktPmhhbmRsZUN1cnJlbnRLZXlib2FyZEV2ZW50
KCkpCkBAIC02NjMsOSArNjUwLDYgQEAgdm9pZCBFZGl0b3JDbGllbnRJbXBsOjpoYW5kbGVJbnB1
dE1ldGhvZEtleWRvd24oS2V5Ym9hcmRFdmVudCoga2V5RXZlbnQpCiAKIHZvaWQgRWRpdG9yQ2xp
ZW50SW1wbDo6dGV4dEZpZWxkRGlkQmVnaW5FZGl0aW5nKEVsZW1lbnQqIGVsZW1lbnQpCiB7Ci0g
ICAgSFRNTElucHV0RWxlbWVudCogaW5wdXRFbGVtZW50ID0gdG9IVE1MSW5wdXRFbGVtZW50KGVs
ZW1lbnQpOwotICAgIGlmIChtX3dlYlZpZXctPmF1dG9maWxsQ2xpZW50KCkgJiYgaW5wdXRFbGVt
ZW50KQotICAgICAgICBtX3dlYlZpZXctPmF1dG9maWxsQ2xpZW50KCktPnRleHRGaWVsZERpZEJl
Z2luRWRpdGluZyhXZWJJbnB1dEVsZW1lbnQoaW5wdXRFbGVtZW50KSk7CiB9CiAKIHZvaWQgRWRp
dG9yQ2xpZW50SW1wbDo6dGV4dEZpZWxkRGlkRW5kRWRpdGluZyhFbGVtZW50KiBlbGVtZW50KQpA
QCAtNjc3LDI5ICs2NjEsOCBAQCB2b2lkIEVkaXRvckNsaWVudEltcGw6OnRleHRGaWVsZERpZEVu
ZEVkaXRpbmcoRWxlbWVudCogZWxlbWVudCkKICAgICAvLyBOb3RpZmljYXRpb24gdGhhdCBmb2N1
cyB3YXMgbG9zdC4gIEJlIGNhcmVmdWwgd2l0aCB0aGlzLCBpdCdzIGFsc28gc2VudAogICAgIC8v
IHdoZW4gdGhlIHBhZ2UgaXMgYmVpbmcgY2xvc2VkLgogCi0gICAgLy8gQ2FuY2VsIGFueSBwZW5k
aW5nIERvQXV0b2ZpbGwgY2FsbC4KLSAgICBtX2F1dG9maWxsQXJncy5jbGVhcigpOwotICAgIG1f
YXV0b2ZpbGxUaW1lci5zdG9wKCk7Ci0KICAgICAvLyBIaWRlIGFueSBzaG93aW5nIHBvcHVwLgog
ICAgIG1fd2ViVmlldy0+aGlkZUF1dG9maWxsUG9wdXAoKTsKLQotICAgIGlmICghbV93ZWJWaWV3
LT5jbGllbnQoKSkKLSAgICAgICAgcmV0dXJuOyAvLyBUaGUgcGFnZSBpcyBnZXR0aW5nIGNsb3Nl
ZCwgZG9uJ3QgZmlsbCB0aGUgcGFzc3dvcmQuCi0KLSAgICAvLyBOb3RpZnkgYW55IHBhc3N3b3Jk
LWxpc3RlbmVyIG9mIHRoZSBmb2N1cyBjaGFuZ2UuCi0gICAgaWYgKCFpbnB1dEVsZW1lbnQpCi0g
ICAgICAgIHJldHVybjsKLQotICAgIFdlYkZyYW1lSW1wbCogd2ViZnJhbWUgPSBXZWJGcmFtZUlt
cGw6OmZyb21GcmFtZShpbnB1dEVsZW1lbnQtPmRvY3VtZW50KCktPmZyYW1lKCkpOwotICAgIGlm
ICghd2ViZnJhbWUpCi0gICAgICAgIHJldHVybjsKLQotICAgIFdlYlBhc3N3b3JkQXV0b2NvbXBs
ZXRlTGlzdGVuZXIqIGxpc3RlbmVyID0gd2ViZnJhbWUtPmdldFBhc3N3b3JkTGlzdGVuZXIoaW5w
dXRFbGVtZW50KTsKLSAgICBpZiAoIWxpc3RlbmVyKQotICAgICAgICByZXR1cm47Ci0KLSAgICBs
aXN0ZW5lci0+ZGlkQmx1cklucHV0RWxlbWVudChpbnB1dEVsZW1lbnQtPnZhbHVlKCkpOwogfQog
CiB2b2lkIEVkaXRvckNsaWVudEltcGw6OnRleHREaWRDaGFuZ2VJblRleHRGaWVsZChFbGVtZW50
KiBlbGVtZW50KQpAQCAtNzA4LDEwMiArNjcxLDYgQEAgdm9pZCBFZGl0b3JDbGllbnRJbXBsOjp0
ZXh0RGlkQ2hhbmdlSW5UZXh0RmllbGQoRWxlbWVudCogZWxlbWVudCkKICAgICBIVE1MSW5wdXRF
bGVtZW50KiBpbnB1dEVsZW1lbnQgPSBzdGF0aWNfY2FzdDxIVE1MSW5wdXRFbGVtZW50Kj4oZWxl
bWVudCk7CiAgICAgaWYgKG1fd2ViVmlldy0+YXV0b2ZpbGxDbGllbnQoKSkKICAgICAgICAgbV93
ZWJWaWV3LT5hdXRvZmlsbENsaWVudCgpLT50ZXh0RmllbGREaWRDaGFuZ2UoV2ViSW5wdXRFbGVt
ZW50KGlucHV0RWxlbWVudCkpOwotCi0gICAgLy8gTm90ZSB0aGF0IHdlIG9ubHkgc2hvdyB0aGUg
YXV0b2ZpbGwgcG9wdXAgaW4gdGhpcyBjYXNlIGlmIHRoZSBjYXJldCBpcyBhdAotICAgIC8vIHRo
ZSBlbmQuICBUaGlzIG1hdGNoZXMgRmlyZUZveCBhbmQgU2FmYXJpIGJ1dCBub3QgSUUuCi0gICAg
YXV0b2ZpbGwoaW5wdXRFbGVtZW50LCBmYWxzZSwgZmFsc2UsIHRydWUpOwotfQotCi1ib29sIEVk
aXRvckNsaWVudEltcGw6OnNob3dGb3JtQXV0b2ZpbGxGb3JOb2RlKE5vZGUqIG5vZGUpCi17Ci0g
ICAgSFRNTElucHV0RWxlbWVudCogaW5wdXRFbGVtZW50ID0gdG9IVE1MSW5wdXRFbGVtZW50KG5v
ZGUpOwotICAgIGlmIChpbnB1dEVsZW1lbnQpCi0gICAgICAgIHJldHVybiBhdXRvZmlsbChpbnB1
dEVsZW1lbnQsIHRydWUsIHRydWUsIGZhbHNlKTsKLSAgICByZXR1cm4gZmFsc2U7Ci19Ci0KLWJv
b2wgRWRpdG9yQ2xpZW50SW1wbDo6YXV0b2ZpbGwoSFRNTElucHV0RWxlbWVudCogaW5wdXRFbGVt
ZW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGF1dG9maWxsRm9ybU9u
bHksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgYXV0b2ZpbGxPbkVtcHR5
VmFsdWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgcmVxdWlyZUNhcmV0
QXRFbmQpCi17Ci0gICAgLy8gQ2FuY2VsIGFueSBwZW5kaW5nIERvQXV0b2ZpbGwgY2FsbC4KLSAg
ICBtX2F1dG9maWxsQXJncy5jbGVhcigpOwotICAgIG1fYXV0b2ZpbGxUaW1lci5zdG9wKCk7Ci0K
LSAgICAvLyBMZXQncyB0cnkgdG8gdHJpZ2dlciBhdXRvZmlsbCBmb3IgdGhhdCBmaWVsZCwgaWYg
YXBwbGljYWJsZS4KLSAgICBpZiAoIWlucHV0RWxlbWVudC0+aXNFbmFibGVkRm9ybUNvbnRyb2wo
KSB8fCAhaW5wdXRFbGVtZW50LT5pc1RleHRGaWVsZCgpCi0gICAgICAgIHx8IGlucHV0RWxlbWVu
dC0+aXNQYXNzd29yZEZpZWxkKCkgfHwgIWlucHV0RWxlbWVudC0+c2hvdWxkQXV0b2NvbXBsZXRl
KCkKLSAgICAgICAgfHwgaW5wdXRFbGVtZW50LT5pc1JlYWRPbmx5Rm9ybUNvbnRyb2woKSkKLSAg
ICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgV2ViU3RyaW5nIG5hbWUgPSBXZWJJbnB1dEVsZW1l
bnQoaW5wdXRFbGVtZW50KS5uYW1lRm9yQXV0b2ZpbGwoKTsKLSAgICBpZiAobmFtZS5pc0VtcHR5
KCkpIC8vIElmIHRoZSBmaWVsZCBoYXMgbm8gbmFtZSwgdGhlbiB3ZSB3b24ndCBoYXZlIHZhbHVl
cy4KLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgLy8gRG9uJ3QgYXR0ZW1wdCB0byBhdXRv
ZmlsbCB3aXRoIHZhbHVlcyB0aGF0IGFyZSB0b28gbGFyZ2UuCi0gICAgaWYgKGlucHV0RWxlbWVu
dC0+dmFsdWUoKS5sZW5ndGgoKSA+IG1heGltdW1UZXh0U2l6ZUZvckF1dG9maWxsKQotICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0KLSAgICBtX2F1dG9maWxsQXJncyA9IGFkb3B0UHRyKG5ldyBBdXRv
ZmlsbEFyZ3MpOwotICAgIG1fYXV0b2ZpbGxBcmdzLT5pbnB1dEVsZW1lbnQgPSBpbnB1dEVsZW1l
bnQ7Ci0gICAgbV9hdXRvZmlsbEFyZ3MtPmF1dG9maWxsRm9ybU9ubHkgPSBhdXRvZmlsbEZvcm1P
bmx5OwotICAgIG1fYXV0b2ZpbGxBcmdzLT5hdXRvZmlsbE9uRW1wdHlWYWx1ZSA9IGF1dG9maWxs
T25FbXB0eVZhbHVlOwotICAgIG1fYXV0b2ZpbGxBcmdzLT5yZXF1aXJlQ2FyZXRBdEVuZCA9IHJl
cXVpcmVDYXJldEF0RW5kOwotICAgIG1fYXV0b2ZpbGxBcmdzLT5iYWNrc3BhY2VPckRlbGV0ZVBy
ZXNzZWQgPSBtX2JhY2tzcGFjZU9yRGVsZXRlUHJlc3NlZDsKLQotICAgIGlmICghcmVxdWlyZUNh
cmV0QXRFbmQpCi0gICAgICAgIGRvQXV0b2ZpbGwoMCk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8v
IFdlIHBvc3QgYSB0YXNrIGZvciBkb2luZyB0aGUgYXV0b2ZpbGwgYXMgdGhlIGNhcmV0IHBvc2l0
aW9uIGlzIG5vdCBzZXQKLSAgICAgICAgLy8gcHJvcGVybHkgYXQgdGhpcyBwb2ludCAoaHR0cDov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY5NzYpCi0gICAgICAgIC8vIGFuZCB3
ZSBuZWVkIGl0IHRvIGRldGVybWluZSB3aGV0aGVyIG9yIG5vdCB0byB0cmlnZ2VyIGF1dG9maWxs
LgotICAgICAgICBtX2F1dG9maWxsVGltZXIuc3RhcnRPbmVTaG90KDAuMCk7Ci0gICAgfQotICAg
IHJldHVybiB0cnVlOwotfQotCi12b2lkIEVkaXRvckNsaWVudEltcGw6OmRvQXV0b2ZpbGwoVGlt
ZXI8RWRpdG9yQ2xpZW50SW1wbD4qIHRpbWVyKQotewotICAgIE93blB0cjxBdXRvZmlsbEFyZ3M+
IGFyZ3MobV9hdXRvZmlsbEFyZ3MucmVsZWFzZSgpKTsKLSAgICBIVE1MSW5wdXRFbGVtZW50KiBp
bnB1dEVsZW1lbnQgPSBhcmdzLT5pbnB1dEVsZW1lbnQuZ2V0KCk7Ci0KLSAgICBjb25zdCBTdHJp
bmcmIHZhbHVlID0gaW5wdXRFbGVtZW50LT52YWx1ZSgpOwotCi0gICAgLy8gRW5mb3JjZSBhdXRv
ZmlsbF9vbl9lbXB0eV92YWx1ZSBhbmQgY2FyZXRfYXRfZW5kLgotCi0gICAgYm9vbCBpc0NhcmV0
QXRFbmQgPSB0cnVlOwotICAgIGlmIChhcmdzLT5yZXF1aXJlQ2FyZXRBdEVuZCkKLSAgICAgICAg
aXNDYXJldEF0RW5kID0gaW5wdXRFbGVtZW50LT5zZWxlY3Rpb25TdGFydCgpID09IGlucHV0RWxl
bWVudC0+c2VsZWN0aW9uRW5kKCkKLSAgICAgICAgICAgICAgICAgICAgICAgJiYgaW5wdXRFbGVt
ZW50LT5zZWxlY3Rpb25FbmQoKSA9PSBzdGF0aWNfY2FzdDxpbnQ+KHZhbHVlLmxlbmd0aCgpKTsK
LQotICAgIGlmICgoIWFyZ3MtPmF1dG9maWxsT25FbXB0eVZhbHVlICYmIHZhbHVlLmlzRW1wdHko
KSkgfHwgIWlzQ2FyZXRBdEVuZCkgewotICAgICAgICBtX3dlYlZpZXctPmhpZGVBdXRvZmlsbFBv
cHVwKCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICAvLyBGaXJzdCBsZXQncyBzZWUg
aWYgdGhlcmUgaXMgYSBwYXNzd29yZCBsaXN0ZW5lciBmb3IgdGhhdCBlbGVtZW50LgotICAgIC8v
IFdlIHdvbid0IHRyaWdnZXIgZm9ybSBhdXRvZmlsbCBpbiB0aGF0IGNhc2UsIGFzIGhhdmluZyBi
b3RoIGJlaGF2aW9yIG9uCi0gICAgLy8gYSBub2RlIHdvdWxkIGJlIGNvbmZ1c2luZy4KLSAgICBX
ZWJGcmFtZUltcGwqIHdlYmZyYW1lID0gV2ViRnJhbWVJbXBsOjpmcm9tRnJhbWUoaW5wdXRFbGVt
ZW50LT5kb2N1bWVudCgpLT5mcmFtZSgpKTsKLSAgICBpZiAoIXdlYmZyYW1lKQotICAgICAgICBy
ZXR1cm47Ci0gICAgV2ViUGFzc3dvcmRBdXRvY29tcGxldGVMaXN0ZW5lciogbGlzdGVuZXIgPSB3
ZWJmcmFtZS0+Z2V0UGFzc3dvcmRMaXN0ZW5lcihpbnB1dEVsZW1lbnQpOwotICAgIGlmIChsaXN0
ZW5lcikgewotICAgICAgICBpZiAoYXJncy0+YXV0b2ZpbGxGb3JtT25seSkKLSAgICAgICAgICAg
IHJldHVybjsKLQotICAgICAgICBsaXN0ZW5lci0+cGVyZm9ybUlubGluZUF1dG9jb21wbGV0ZSh2
YWx1ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncy0+
YmFja3NwYWNlT3JEZWxldGVQcmVzc2VkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0cnVlKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLX0KLQotdm9pZCBF
ZGl0b3JDbGllbnRJbXBsOjpjYW5jZWxQZW5kaW5nQXV0b2ZpbGwoKQotewotICAgIG1fYXV0b2Zp
bGxBcmdzLmNsZWFyKCk7Ci0gICAgbV9hdXRvZmlsbFRpbWVyLnN0b3AoKTsKIH0KIAogYm9vbCBF
ZGl0b3JDbGllbnRJbXBsOjpkb1RleHRGaWVsZENvbW1hbmRGcm9tRXZlbnQoRWxlbWVudCogZWxl
bWVudCwKQEAgLTgxNSwxMiArNjgyLDYgQEAgYm9vbCBFZGl0b3JDbGllbnRJbXBsOjpkb1RleHRG
aWVsZENvbW1hbmRGcm9tRXZlbnQoRWxlbWVudCogZWxlbWVudCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZWJLZXlib2Fy
ZEV2ZW50QnVpbGRlcigqZXZlbnQpKTsKICAgICB9CiAKLSAgICAvLyBSZW1lbWJlciBpZiBiYWNr
c3BhY2Ugd2FzIHByZXNzZWQgZm9yIHRoZSBhdXRvZmlsbC4gIEl0IGlzIG5vdCBjbGVhciBob3cg
dG8KLSAgICAvLyBmaW5kIGlmIGJhY2tzcGFjZSB3YXMgcHJlc3NlZCBmcm9tIHRleHRGaWVsZERp
ZEJlZ2luRWRpdGluZyBhbmQKLSAgICAvLyB0ZXh0RGlkQ2hhbmdlSW5UZXh0RmllbGQgYXMgd2hl
biB0aGVzZSBtZXRob2RzIGFyZSBjYWxsZWQgdGhlIHZhbHVlIG9mIHRoZQotICAgIC8vIGlucHV0
IGVsZW1lbnQgYWxyZWFkeSBjb250YWlucyB0aGUgdHlwZSBjaGFyYWN0ZXIuCi0gICAgbV9iYWNr
c3BhY2VPckRlbGV0ZVByZXNzZWQgPSBldmVudC0+a2V5Q29kZSgpID09IFZLRVlfQkFDSyB8fCBl
dmVudC0+a2V5Q29kZSgpID09IFZLRVlfREVMRVRFOwotCiAgICAgLy8gVGhlIE1hYyBjb2RlIGFw
cGVhcnMgdG8gdXNlIHRoaXMgbWV0aG9kIGFzIGEgaG9vayB0byBpbXBsZW1lbnQgc3BlY2lhbAog
ICAgIC8vIGtleWJvYXJkIGNvbW1hbmRzIHNwZWNpZmljIHRvIFNhZmFyaSdzIGF1dG8tZmlsbCBp
bXBsZW1lbnRhdGlvbi4gIFdlCiAgICAgLy8ganVzdCByZXR1cm4gZmFsc2UgdG8gYWxsb3cgdGhl
IGRlZmF1bHQgYWN0aW9uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
RWRpdG9yQ2xpZW50SW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRWRpdG9yQ2xp
ZW50SW1wbC5oCmluZGV4IDZiY2M3OWRkMTlmNWY1YTUxZjY3MDU1NmZiNjY1MTMxMmZiOTNmMGUu
LjJkZGVlMzZkZWFkNzFmMThiZmM2Y2M1M2UxNjRiYzZiM2NjYjc3MGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0VkaXRvckNsaWVudEltcGwuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9FZGl0b3JDbGllbnRJbXBsLmgKQEAgLTExOCwzOCArMTE4LDkg
QEAgcHVibGljOgogCiAgICAgdmlydHVhbCBXZWJDb3JlOjpUZXh0Q2hlY2tlckNsaWVudCogdGV4
dENoZWNrZXIoKSB7IHJldHVybiB0aGlzOyB9CiAKLSAgICAvLyBTaG93cyB0aGUgZm9ybSBhdXRv
ZmlsbCBwb3B1cCBmb3IgfG5vZGV8IGlmIGl0IGlzIGFuIEhUTUxJbnB1dEVsZW1lbnQgYW5kCi0g
ICAgLy8gaXQgaXMgZW1wdHkuICBUaGlzIGlzIGNhbGxlZCB3aGVuIHlvdSBwcmVzcyB0aGUgdXAg
b3IgZG93biBhcnJvdyBpbiBhCi0gICAgLy8gdGV4dC1maWVsZCBvciB3aGVuIGNsaWNraW5nIGFu
IGFscmVhZHkgZm9jdXNlZCB0ZXh0LWZpZWxkLgotICAgIC8vIFJldHVybnMgdHJ1ZSBpZiB0aGUg
YXV0b2ZpbGwgcG9wdXAgaGFzIGJlZW4gc2NoZWR1bGVkIHRvIGJlIHNob3duLCBmYWxzZQotICAg
IC8vIG90aGVyd2lzZS4KLSAgICB2aXJ0dWFsIGJvb2wgc2hvd0Zvcm1BdXRvZmlsbEZvck5vZGUo
V2ViQ29yZTo6Tm9kZSopOwotCiBwcml2YXRlOgogICAgIHZvaWQgbW9kaWZ5U2VsZWN0aW9uKFdl
YkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6S2V5Ym9hcmRFdmVudCopOwogCi0gICAgLy8gVHJpZ2dl
cnMgYXV0b2ZpbGwgZm9yIGFuIGlucHV0IGVsZW1lbnQgaWYgYXBwbGljYWJsZS4gIFRoaXMgY2Fu
IGJlIGZvcm0KLSAgICAvLyBhdXRvZmlsbCAodmlhIGEgcG9wdXAtbWVudSkgb3IgcGFzc3dvcmQg
YXV0b2ZpbGwgZGVwZW5kaW5nIG9uIHRoZQotICAgIC8vIGlucHV0IGVsZW1lbnQuICBJZiB8Zm9y
bUF1dG9maWxsT25seXwgaXMgdHJ1ZSwgcGFzc3dvcmQgYXV0b2ZpbGwgaXMgbm90Ci0gICAgLy8g
dHJpZ2dlcmVkLgotICAgIC8vIHxhdXRvZmlsbE9uRW1wdHlWYWx1ZXwgaW5kaWNhdGVzIHdoZXRo
ZXIgdGhlIGF1dG9maWxsIHNob3VsZCBiZSBzaG93bgotICAgIC8vIHdoZW4gdGhlIHRleHQtZmll
bGQgaXMgZW1wdHkuCi0gICAgLy8gSWYgfHJlcXVpcmVzQ2FyZXRBdEVuZHwgaXMgdHJ1ZSwgdGhl
IGF1dG9maWxsIHBvcHVwIGlzIG9ubHkgc2hvd24gaWYgdGhlCi0gICAgLy8gY2FyZXQgaXMgbG9j
YXRlZCBhdCB0aGUgZW5kIG9mIHRoZSBlbnRlcmVkIHRleHQuCi0gICAgLy8gUmV0dXJucyB0cnVl
IGlmIHRoZSBhdXRvZmlsbCBwb3B1cCBoYXMgYmVlbiBzY2hlZHVsZWQgdG8gYmUgc2hvd24sIGZh
bHNlCi0gICAgLy8gb3RoZXJ3aXNlLgotICAgIGJvb2wgYXV0b2ZpbGwoV2ViQ29yZTo6SFRNTElu
cHV0RWxlbWVudCosCi0gICAgICAgICAgICAgICAgICBib29sIGZvcm1BdXRvZmlsbE9ubHksIGJv
b2wgYXV0b2ZpbGxPbkVtcHR5VmFsdWUsCi0gICAgICAgICAgICAgICAgICBib29sIHJlcXVpcmVz
Q2FyZXRBdEVuZCk7Ci0KLSAgICAvLyBDYWxsZWQgdG8gcHJvY2VzcyB0aGUgYXV0b2ZpbGwgZGVz
Y3JpYmVkIGJ5IG1fYXV0b2ZpbGxBcmdzLgotICAgIC8vIFRoaXMgbWV0aG9kIGlzIGludm9rZWQg
YXN5bmNocm9ub3VzbHkgaWYgdGhlIGNhcmV0IHBvc2l0aW9uIGlzIG5vdAotICAgIC8vIHJlZmxl
Y3RpbmcgdGhlIGxhc3QgdGV4dCBjaGFuZ2UgeWV0LCBhbmQgd2UgbmVlZCBpdCB0byBkZWNpZGUg
d2hldGhlciBvcgotICAgIC8vIG5vdCB0byBzaG93IHRoZSBhdXRvZmlsbCBwb3B1cC4KLSAgICB2
b2lkIGRvQXV0b2ZpbGwoV2ViQ29yZTo6VGltZXI8RWRpdG9yQ2xpZW50SW1wbD4qKTsKLQotICAg
IHZvaWQgY2FuY2VsUGVuZGluZ0F1dG9maWxsKCk7Ci0KICAgICAvLyBSZXR1cm5zIHdoZXRoZXIg
b3Igbm90IHRoZSBmb2N1c2VkIGNvbnRyb2wgbmVlZHMgc3BlbGwtY2hlY2tpbmcuCiAgICAgLy8g
Q3VycmVudGx5LCB0aGlzIGZ1bmN0aW9uIGp1c3QgcmV0cmlldmVzIHRoZSBmb2N1c2VkIG5vZGUg
YW5kIGRldGVybWluZXMKICAgICAvLyB3aGV0aGVyIG9yIG5vdCBpdCBpcyBhIDx0ZXh0YXJlYT4g
ZWxlbWVudCBvciBhbiBlbGVtZW50IHdob3NlCkBAIC0xNjYsOSArMTM3LDYgQEAgcHJpdmF0ZToK
ICAgICBFZGl0Q29tbWFuZFN0YWNrIG1fdW5kb1N0YWNrOwogICAgIEVkaXRDb21tYW5kU3RhY2sg
bV9yZWRvU3RhY2s7CiAKLSAgICAvLyBXaGV0aGVyIHRoZSBsYXN0IGVudGVyZWQga2V5IHdhcyBh
IGJhY2tzcGFjZS4KLSAgICBib29sIG1fYmFja3NwYWNlT3JEZWxldGVQcmVzc2VkOwotCiAgICAg
Ly8gVGhpcyBmbGFnIGlzIHNldCB0byBmYWxzZSBpZiBzcGVsbCBjaGVjayBmb3IgdGhpcyBlZGl0
b3IgaXMgbWFudWFsbHkKICAgICAvLyB0dXJuZWQgb2ZmLiBUaGUgZGVmYXVsdCBzZXR0aW5nIGlz
IFNwZWxsQ2hlY2tBdXRvbWF0aWMuCiAgICAgZW51bSB7CkBAIC0xNzcsMTggKzE0NSw2IEBAIHBy
aXZhdGU6CiAgICAgICAgIFNwZWxsQ2hlY2tGb3JjZWRPZmYKICAgICB9OwogICAgIGludCBtX3Nw
ZWxsQ2hlY2tUaGlzRmllbGRTdGF0dXM7Ci0KLSAgICAvLyBVc2VkIHRvIGRlbGF5IGF1dG9maWxs
IHByb2Nlc3NpbmcuCi0gICAgV2ViQ29yZTo6VGltZXI8RWRpdG9yQ2xpZW50SW1wbD4gbV9hdXRv
ZmlsbFRpbWVyOwotCi0gICAgc3RydWN0IEF1dG9maWxsQXJncyB7Ci0gICAgICAgIFJlZlB0cjxX
ZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50PiBpbnB1dEVsZW1lbnQ7Ci0gICAgICAgIGJvb2wgYXV0
b2ZpbGxGb3JtT25seTsKLSAgICAgICAgYm9vbCBhdXRvZmlsbE9uRW1wdHlWYWx1ZTsKLSAgICAg
ICAgYm9vbCByZXF1aXJlQ2FyZXRBdEVuZDsKLSAgICAgICAgYm9vbCBiYWNrc3BhY2VPckRlbGV0
ZVByZXNzZWQ7Ci0gICAgfTsKLSAgICBPd25QdHI8QXV0b2ZpbGxBcmdzPiBtX2F1dG9maWxsQXJn
czsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKaW5kZXggZDY2NTNjNDAxNTcw
MzVhNTNlMmIzOTVhY2QxOTc3NWY2NjI3YjY4Zi4uZjk0MGI0YjhiN2UxZTM5Mjc1NTE2MzBjOGNk
ODExOTc4M2YwM2VjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJh
bWVMb2FkZXJDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9G
cmFtZUxvYWRlckNsaWVudEltcGwuY3BwCkBAIC00MzgsMTAgKzQzOCw2IEBAIHZvaWQgRnJhbWVM
b2FkZXJDbGllbnRJbXBsOjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsCiAKIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRJbXBsOjpkaXNwYXRjaERpZEZpbmlzaERv
Y3VtZW50TG9hZCgpCiB7Ci0gICAgLy8gQSBmcmFtZSBtYXkgYmUgcmV1c2VkLiAgVGhpcyBjYWxs
IGVuc3VyZXMgd2UgZG9uJ3QgaG9sZCBvbiB0byBvdXIgcGFzc3dvcmQKLSAgICAvLyBsaXN0ZW5l
cnMgYW5kIHRoZWlyIGFzc29jaWF0ZWQgSFRNTElucHV0RWxlbWVudHMuCi0gICAgbV93ZWJGcmFt
ZS0+Y2xlYXJQYXNzd29yZExpc3RlbmVycygpOwotCiAgICAgaWYgKG1fd2ViRnJhbWUtPmNsaWVu
dCgpKQogICAgICAgICBtX3dlYkZyYW1lLT5jbGllbnQoKS0+ZGlkRmluaXNoRG9jdW1lbnRMb2Fk
KG1fd2ViRnJhbWUpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViRnJhbWVJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1w
bC5jcHAKaW5kZXggM2U2ZjEwMjQ1MmY5YTVmZjJmNjc4ZjBkYTdmMTczNzZmYjVlODE4MS4uMWRk
NzcxNGY0YTQxNDBmMWRhNmIxMTE3ZmUyMDM2ZDEyZjdhMWU4MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCkBAIC0xNDQsNyArMTQ0LDYgQEAKICNpbmNs
dWRlICJXZWJJY29uVVJMLmgiCiAjaW5jbHVkZSAiV2ViSW5wdXRFbGVtZW50LmgiCiAjaW5jbHVk
ZSAiV2ViTm9kZS5oIgotI2luY2x1ZGUgIldlYlBhc3N3b3JkQXV0b2NvbXBsZXRlTGlzdGVuZXIu
aCIKICNpbmNsdWRlICJXZWJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgIldlYlBsdWdpbi5oIgog
I2luY2x1ZGUgIldlYlBsdWdpbkNvbnRhaW5lckltcGwuaCIKQEAgLTI1Nyw3ICsyNTYsNyBAQCBz
dGF0aWMgdm9pZCBmcmFtZUNvbnRlbnRBc1BsYWluVGV4dChzaXplX3QgbWF4Q2hhcnMsIEZyYW1l
KiBmcmFtZSwKICAgICBmb3IgKEZyYW1lKiBjdXJDaGlsZCA9IGZyYW1lVHJlZS0+Zmlyc3RDaGls
ZCgpOyBjdXJDaGlsZDsgY3VyQ2hpbGQgPSBjdXJDaGlsZC0+dHJlZSgpLT5uZXh0U2libGluZygp
KSB7CiAgICAgICAgIC8vIElnbm9yZSB0aGUgdGV4dCBvZiBub24tdmlzaWJsZSBmcmFtZXMuCiAg
ICAgICAgIFJlbmRlclZpZXcqIGNvbnRlbnRSZW5kZXJlciA9IGN1ckNoaWxkLT5jb250ZW50UmVu
ZGVyZXIoKTsKLSAgICAgICAgUmVuZGVyUGFydCogb3duZXJSZW5kZXJlciA9IGN1ckNoaWxkLT5v
d25lclJlbmRlcmVyKCk7ICAgICAgICAKKyAgICAgICAgUmVuZGVyUGFydCogb3duZXJSZW5kZXJl
ciA9IGN1ckNoaWxkLT5vd25lclJlbmRlcmVyKCk7CiAgICAgICAgIGlmICghY29udGVudFJlbmRl
cmVyIHx8ICFjb250ZW50UmVuZGVyZXItPndpZHRoKCkgfHwgIWNvbnRlbnRSZW5kZXJlci0+aGVp
Z2h0KCkKICAgICAgICAgICAgIHx8IChjb250ZW50UmVuZGVyZXItPngoKSArIGNvbnRlbnRSZW5k
ZXJlci0+d2lkdGgoKSA8PSAwKSB8fCAoY29udGVudFJlbmRlcmVyLT55KCkgKyBjb250ZW50UmVu
ZGVyZXItPmhlaWdodCgpIDw9IDApCiAgICAgICAgICAgICB8fCAob3duZXJSZW5kZXJlciAmJiBv
d25lclJlbmRlcmVyLT5zdHlsZSgpICYmIG93bmVyUmVuZGVyZXItPnN0eWxlKCktPnZpc2liaWxp
dHkoKSAhPSBWSVNJQkxFKSkgewpAQCAtMTY1NCw3ICsxNjUzLDcgQEAgdm9pZCBXZWJGcmFtZUlt
cGw6OnNjb3BlU3RyaW5nTWF0Y2hlcyhpbnQgaWRlbnRpZmllciwKICAgICAgICAgLy8gU2V0IHRo
ZSBuZXcgc3RhcnQgZm9yIHRoZSBzZWFyY2ggcmFuZ2UgdG8gYmUgdGhlIGVuZCBvZiB0aGUgcHJl
dmlvdXMKICAgICAgICAgLy8gcmVzdWx0IHJhbmdlLiBUaGVyZSBpcyBubyBuZWVkIHRvIHVzZSBh
IFZpc2libGVQb3NpdGlvbiBoZXJlLAogICAgICAgICAvLyBzaW5jZSBmaW5kUGxhaW5UZXh0IHdp
bGwgdXNlIGEgVGV4dEl0ZXJhdG9yIHRvIGdvIG92ZXIgdGhlIHZpc2libGUKLSAgICAgICAgLy8g
dGV4dCBub2Rlcy4gCisgICAgICAgIC8vIHRleHQgbm9kZXMuCiAgICAgICAgIHNlYXJjaFJhbmdl
LT5zZXRTdGFydChyZXN1bHRSYW5nZS0+ZW5kQ29udGFpbmVyKGVjKSwgcmVzdWx0UmFuZ2UtPmVu
ZE9mZnNldChlYyksIGVjKTsKIAogICAgICAgICBOb2RlKiBzaGFkb3dUcmVlUm9vdCA9IHNlYXJj
aFJhbmdlLT5zaGFkb3dUcmVlUm9vdE5vZGUoKTsKQEAgLTE4NzksNyArMTg3OCw2IEBAIFdlYkZy
YW1lSW1wbDo6fldlYkZyYW1lSW1wbCgpCiAgICAgZnJhbWVDb3VudC0tOwogCiAgICAgY2FuY2Vs
UGVuZGluZ1Njb3BpbmdFZmZvcnQoKTsKLSAgICBjbGVhclBhc3N3b3JkTGlzdGVuZXJzKCk7CiB9
CiAKIHZvaWQgV2ViRnJhbWVJbXBsOjppbml0aWFsaXplQXNNYWluRnJhbWUoV2ViVmlld0ltcGwq
IHdlYlZpZXdJbXBsKQpAQCAtMjExMywzNSArMjExMSw2IEBAIHZvaWQgV2ViRnJhbWVJbXBsOjpz
ZXRDYW5IYXZlU2Nyb2xsYmFycyhib29sIGNhbkhhdmVTY3JvbGxiYXJzKQogICAgIG1fZnJhbWUt
PnZpZXcoKS0+c2V0Q2FuSGF2ZVNjcm9sbGJhcnMoY2FuSGF2ZVNjcm9sbGJhcnMpOwogfQogCi1i
b29sIFdlYkZyYW1lSW1wbDo6cmVnaXN0ZXJQYXNzd29yZExpc3RlbmVyKAotICAgIFdlYklucHV0
RWxlbWVudCBpbnB1dEVsZW1lbnQsCi0gICAgV2ViUGFzc3dvcmRBdXRvY29tcGxldGVMaXN0ZW5l
ciogbGlzdGVuZXIpCi17Ci0gICAgUmVmUHRyPEhUTUxJbnB1dEVsZW1lbnQ+IGVsZW1lbnQoaW5w
dXRFbGVtZW50LnVud3JhcDxIVE1MSW5wdXRFbGVtZW50PigpKTsKLSAgICBpZiAoIW1fcGFzc3dv
cmRMaXN0ZW5lcnMuYWRkKGVsZW1lbnQsIGxpc3RlbmVyKS5zZWNvbmQpIHsKLSAgICAgICAgZGVs
ZXRlIGxpc3RlbmVyOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotICAgIHJldHVybiB0
cnVlOwotfQotCi12b2lkIFdlYkZyYW1lSW1wbDo6bm90aWZpeVBhc3N3b3JkTGlzdGVuZXJPZkF1
dG9jb21wbGV0ZSgKLSAgICBjb25zdCBXZWJJbnB1dEVsZW1lbnQmIGlucHV0RWxlbWVudCkKLXsK
LSAgICBjb25zdCBIVE1MSW5wdXRFbGVtZW50KiBlbGVtZW50ID0gaW5wdXRFbGVtZW50LmNvbnN0
VW53cmFwPEhUTUxJbnB1dEVsZW1lbnQ+KCk7Ci0gICAgV2ViUGFzc3dvcmRBdXRvY29tcGxldGVM
aXN0ZW5lciogbGlzdGVuZXIgPSBnZXRQYXNzd29yZExpc3RlbmVyKGVsZW1lbnQpOwotICAgIC8v
IFBhc3N3b3JkIGxpc3RlbmVycyBuZWVkIHRvIGF1dG9jb21wbGV0ZSBvdGhlciBmaWVsZHMgdGhh
dCBkZXBlbmQgb24gdGhlCi0gICAgLy8gaW5wdXQgZWxlbWVudCB3aXRoIGF1dG9maWxsIHN1Z2dl
c3Rpb25zLgotICAgIGlmIChsaXN0ZW5lcikKLSAgICAgICAgbGlzdGVuZXItPnBlcmZvcm1Jbmxp
bmVBdXRvY29tcGxldGUoZWxlbWVudC0+dmFsdWUoKSwgZmFsc2UsIGZhbHNlKTsKLX0KLQotV2Vi
UGFzc3dvcmRBdXRvY29tcGxldGVMaXN0ZW5lciogV2ViRnJhbWVJbXBsOjpnZXRQYXNzd29yZExp
c3RlbmVyKAotICAgIGNvbnN0IEhUTUxJbnB1dEVsZW1lbnQqIGlucHV0RWxlbWVudCkKLXsKLSAg
ICByZXR1cm4gbV9wYXNzd29yZExpc3RlbmVycy5nZXQoUmVmUHRyPEhUTUxJbnB1dEVsZW1lbnQ+
KGNvbnN0X2Nhc3Q8SFRNTElucHV0RWxlbWVudCo+KGlucHV0RWxlbWVudCkpKTsKLX0KLQogLy8g
V2ViRnJhbWVJbXBsIHByaXZhdGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogdm9pZCBXZWJGcmFtZUltcGw6OmNsb3NpbmcoKQpAQCAt
MjI2NSwxMiArMjIzNCw2IEBAIHZvaWQgV2ViRnJhbWVJbXBsOjppbnZhbGlkYXRlSWZOZWNlc3Nh
cnkoKQogICAgIH0KIH0KIAotdm9pZCBXZWJGcmFtZUltcGw6OmNsZWFyUGFzc3dvcmRMaXN0ZW5l
cnMoKQotewotICAgIGRlbGV0ZUFsbFZhbHVlcyhtX3Bhc3N3b3JkTGlzdGVuZXJzKTsKLSAgICBt
X3Bhc3N3b3JkTGlzdGVuZXJzLmNsZWFyKCk7Ci19Ci0KIHZvaWQgV2ViRnJhbWVJbXBsOjpsb2Fk
SmF2YVNjcmlwdFVSTChjb25zdCBLVVJMJiB1cmwpCiB7CiAgICAgLy8gVGhpcyBpcyBjb3BpZWQg
ZnJvbSBTY3JpcHRDb250cm9sbGVyOjpleGVjdXRlSWZKYXZhU2NyaXB0VVJMLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmggYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaAppbmRleCA5MDUwMzMwOWFhNjNkODRiZjRj
OTgyMTE0YTM4ZjI5NDVmYTQ1NTM2Li4wMzhkODY0ZjJhMTg2YjRlZjE4NmY2Nzk3ODg1ZWEyNjIz
NTkyYjVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUlt
cGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaApAQCAt
NTYsNyArNTYsNiBAQCBjbGFzcyBDaHJvbWVQcmludENvbnRleHQ7CiBjbGFzcyBXZWJEYXRhU291
cmNlSW1wbDsKIGNsYXNzIFdlYklucHV0RWxlbWVudDsKIGNsYXNzIFdlYkZyYW1lQ2xpZW50Owot
Y2xhc3MgV2ViUGFzc3dvcmRBdXRvY29tcGxldGVMaXN0ZW5lcjsKIGNsYXNzIFdlYlBlcmZvcm1h
bmNlOwogY2xhc3MgV2ViUGx1Z2luQ29udGFpbmVySW1wbDsKIGNsYXNzIFdlYlZpZXc7CkBAIC0x
ODYsMTAgKzE4NSw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsUGVuZGluZ1Nj
b3BpbmdFZmZvcnQoKTsKICAgICB2aXJ0dWFsIHZvaWQgaW5jcmVhc2VNYXRjaENvdW50KGludCBj
b3VudCwgaW50IGlkZW50aWZpZXIpOwogICAgIHZpcnR1YWwgdm9pZCByZXNldE1hdGNoQ291bnQo
KTsKLSAgICB2aXJ0dWFsIGJvb2wgcmVnaXN0ZXJQYXNzd29yZExpc3RlbmVyKAotICAgICAgICBX
ZWJJbnB1dEVsZW1lbnQsIFdlYlBhc3N3b3JkQXV0b2NvbXBsZXRlTGlzdGVuZXIqKTsKLSAgICB2
aXJ0dWFsIHZvaWQgbm90aWZpeVBhc3N3b3JkTGlzdGVuZXJPZkF1dG9jb21wbGV0ZSgKLSAgICAg
ICAgY29uc3QgV2ViSW5wdXRFbGVtZW50Jik7CiAKICAgICB2aXJ0dWFsIFdlYlN0cmluZyBjb250
ZW50QXNUZXh0KHNpemVfdCBtYXhDaGFycykgY29uc3Q7CiAgICAgdmlydHVhbCBXZWJTdHJpbmcg
Y29udGVudEFzTWFya3VwKCkgY29uc3Q7CkBAIC0yNTgsMTIgKzI1Myw2IEBAIHB1YmxpYzoKICAg
ICAvLyBPdGhlcndpc2UsIGRpc2FsbG93IHNjcm9sbGluZy4KICAgICB2b2lkIHNldENhbkhhdmVT
Y3JvbGxiYXJzKGJvb2wpOwogCi0gICAgLy8gUmV0dXJucyB0aGUgcGFzc3dvcmQgYXV0b2NvbXBs
ZXRlIGxpc3RlbmVyIGFzc29jaWF0ZWQgd2l0aCB0aGUgcGFzc2VkCi0gICAgLy8gdXNlciBuYW1l
IGlucHV0IGVsZW1lbnQsIG9yIDAgaWYgbm9uZSBhdmFpbGFibGUuCi0gICAgLy8gTm90ZSB0aGF0
IHRoZSByZXR1cm5lZCBsaXN0ZW5lciBpcyBvd25lciBieSB0aGUgV2ViRnJhbWVJbXBsIGFuZCBz
aG91bGQgbm90Ci0gICAgLy8gYmUga2VwdCBhcm91bmQgYXMgaXQgaXMgZGVsZXRlZCB3aGVuIHRo
ZSBwYWdlIGdvZXMgYXdheS4KLSAgICBXZWJQYXNzd29yZEF1dG9jb21wbGV0ZUxpc3RlbmVyKiBn
ZXRQYXNzd29yZExpc3RlbmVyKGNvbnN0IFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQqKTsKLQog
ICAgIFdlYkZyYW1lQ2xpZW50KiBjbGllbnQoKSBjb25zdCB7IHJldHVybiBtX2NsaWVudDsgfQog
ICAgIHZvaWQgc2V0Q2xpZW50KFdlYkZyYW1lQ2xpZW50KiBjbGllbnQpIHsgbV9jbGllbnQgPSBj
bGllbnQ7IH0KIApAQCAtMzI2LDkgKzMxNSw2IEBAIHByaXZhdGU6CiAgICAgLy8gRGV0ZXJtaW5l
cyB3aGV0aGVyIHRvIGludmFsaWRhdGUgdGhlIGNvbnRlbnQgYXJlYSBhbmQgc2Nyb2xsYmFyLgog
ICAgIHZvaWQgaW52YWxpZGF0ZUlmTmVjZXNzYXJ5KCk7CiAKLSAgICAvLyBDbGVhcnMgdGhlIG1h
cCBvZiBwYXNzd29yZCBsaXN0ZW5lcnMuCi0gICAgdm9pZCBjbGVhclBhc3N3b3JkTGlzdGVuZXJz
KCk7Ci0KICAgICB2b2lkIGxvYWRKYXZhU2NyaXB0VVJMKGNvbnN0IFdlYkNvcmU6OktVUkwmKTsK
IAogICAgIC8vIFJldHVybnMgYSBoaXQtdGVzdGVkIFZpc2libGVQb3NpdGlvbiBmb3IgdGhlIGdp
dmVuIHBvaW50CkBAIC0zOTgsMTIgKzM4NCw2IEBAIHByaXZhdGU6CiAgICAgLy8gaW5mb3JtYXRp
b24uIElzIHVzZWQgYnkgUHJpbnRQYWdlKCkuCiAgICAgT3duUHRyPENocm9tZVByaW50Q29udGV4
dD4gbV9wcmludENvbnRleHQ7CiAKLSAgICAvLyBUaGUgaW5wdXQgZmllbGRzIHRoYXQgYXJlIGlu
dGVyZXN0ZWQgaW4gZWRpdCBldmVudHMgYW5kIHRoZWlyIGFzc29jaWF0ZWQKLSAgICAvLyBsaXN0
ZW5lcnMuCi0gICAgdHlwZWRlZiBIYXNoTWFwPFJlZlB0cjxXZWJDb3JlOjpIVE1MSW5wdXRFbGVt
ZW50PiwKLSAgICAgICAgICAgICAgICAgICAgV2ViUGFzc3dvcmRBdXRvY29tcGxldGVMaXN0ZW5l
cio+IFBhc3N3b3JkTGlzdGVuZXJNYXA7Ci0gICAgUGFzc3dvcmRMaXN0ZW5lck1hcCBtX3Bhc3N3
b3JkTGlzdGVuZXJzOwotCiAgICAgLy8gS2VlcHMgYSByZWZlcmVuY2UgdG8gdGhlIGZyYW1lJ3Mg
V2ViQW5pbWF0aW9uQ29udHJvbGxlci4KICAgICBXZWJBbmltYXRpb25Db250cm9sbGVySW1wbCBt
X2FuaW1hdGlvbkNvbnRyb2xsZXI7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlZpZXdJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZp
ZXdJbXBsLmNwcAppbmRleCA3YjJiNGU0MTljZTAwNTZjYWNlZjZiMzdlZDRkNjJmNTdjZDM1NmYw
Li40ZmUyOTE3ODgxOGEwODdiMWE3YjEyNDBjZjBiZjRhM2EyMDQ5OWY2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCkBAIC00NjAsNyArNDYwLDYgQEAgdm9p
ZCBXZWJWaWV3SW1wbDo6bW91c2VEb3duKGNvbnN0IFdlYk1vdXNlRXZlbnQmIGV2ZW50KQogCiAg
ICAgbV9sYXN0TW91c2VEb3duUG9pbnQgPSBXZWJQb2ludChldmVudC54LCBldmVudC55KTsKIAot
ICAgIFJlZlB0cjxOb2RlPiBjbGlja2VkTm9kZTsKICAgICBpZiAoZXZlbnQuYnV0dG9uID09IFdl
Yk1vdXNlRXZlbnQ6OkJ1dHRvbkxlZnQpIHsKICAgICAgICAgSW50UG9pbnQgcG9pbnQoZXZlbnQu
eCwgZXZlbnQueSk7CiAgICAgICAgIHBvaW50ID0gbV9wYWdlLT5tYWluRnJhbWUoKS0+dmlldygp
LT53aW5kb3dUb0NvbnRlbnRzKHBvaW50KTsKQEAgLTQ3MCwxOCArNDY5LDYgQEAgdm9pZCBXZWJW
aWV3SW1wbDo6bW91c2VEb3duKGNvbnN0IFdlYk1vdXNlRXZlbnQmIGV2ZW50KQogICAgICAgICAv
LyBUYWtlIGNhcHR1cmUgb24gYSBtb3VzZSBkb3duIG9uIGEgcGx1Z2luIHNvIHdlIGNhbiBzZW5k
IGl0IG1vdXNlIGV2ZW50cy4KICAgICAgICAgaWYgKGhpdE5vZGUgJiYgaGl0Tm9kZS0+cmVuZGVy
ZXIoKSAmJiBoaXROb2RlLT5yZW5kZXJlcigpLT5pc0VtYmVkZGVkT2JqZWN0KCkpCiAgICAgICAg
ICAgICBtX21vdXNlQ2FwdHVyZU5vZGUgPSBoaXROb2RlOwotCi0gICAgICAgIC8vIElmIGEgdGV4
dCBmaWVsZCB0aGF0IGhhcyBmb2N1cyBpcyBjbGlja2VkIGFnYWluLCB3ZSBzaG91bGQgZGlzcGxh
eSB0aGUKLSAgICAgICAgLy8gQXV0b2ZpbGwgcG9wdXAuCi0gICAgICAgIFJlZlB0cjxOb2RlPiBm
b2N1c2VkTm9kZSA9IGZvY3VzZWRXZWJDb3JlTm9kZSgpOwotICAgICAgICBpZiAoZm9jdXNlZE5v
ZGUuZ2V0KCkgJiYgdG9IVE1MSW5wdXRFbGVtZW50KGZvY3VzZWROb2RlLmdldCgpKSkgewotICAg
ICAgICAgICAgaWYgKGhpdE5vZGUgPT0gZm9jdXNlZE5vZGUpIHsKLSAgICAgICAgICAgICAgICAv
LyBBbHJlYWR5IGZvY3VzZWQgdGV4dCBmaWVsZCB3YXMgY2xpY2tlZCwgbGV0J3MgcmVtZW1iZXIg
dGhpcy4gIElmCi0gICAgICAgICAgICAgICAgLy8gZm9jdXMgaGFzIG5vdCBjaGFuZ2VkIGFmdGVy
IHRoZSBtb3VzZSBldmVudCBpcyBwcm9jZXNzZWQsIHdlJ2xsCi0gICAgICAgICAgICAgICAgLy8g
dHJpZ2dlciB0aGUgYXV0b2NvbXBsZXRlLgotICAgICAgICAgICAgICAgIGNsaWNrZWROb2RlID0g
Zm9jdXNlZE5vZGU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KICAgICB9CiAKICAgICBtYWlu
RnJhbWVJbXBsKCktPmZyYW1lKCktPmxvYWRlcigpLT5yZXNldE11bHRpcGxlRm9ybVN1Ym1pc3Np
b25Qcm90ZWN0aW9uKCk7CkBAIC00ODksMTEgKzQ3Niw2IEBAIHZvaWQgV2ViVmlld0ltcGw6Om1v
dXNlRG93bihjb25zdCBXZWJNb3VzZUV2ZW50JiBldmVudCkKICAgICBtYWluRnJhbWVJbXBsKCkt
PmZyYW1lKCktPmV2ZW50SGFuZGxlcigpLT5oYW5kbGVNb3VzZVByZXNzRXZlbnQoCiAgICAgICAg
IFBsYXRmb3JtTW91c2VFdmVudEJ1aWxkZXIobWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKSwg
ZXZlbnQpKTsKIAotICAgIGlmIChjbGlja2VkTm9kZS5nZXQoKSAmJiBjbGlja2VkTm9kZSA9PSBm
b2N1c2VkV2ViQ29yZU5vZGUoKSkgewotICAgICAgICAvLyBGb2N1cyBoYXMgbm90IGNoYW5nZWQs
IHNob3cgdGhlIEF1dG9maWxsIHBvcHVwLgotICAgICAgICBzdGF0aWNfY2FzdDxFZGl0b3JDbGll
bnRJbXBsKj4obV9wYWdlLT5lZGl0b3JDbGllbnQoKSktPgotICAgICAgICAgICAgc2hvd0Zvcm1B
dXRvZmlsbEZvck5vZGUoY2xpY2tlZE5vZGUuZ2V0KCkpOwotICAgIH0KICAgICBpZiAobV9zZWxl
Y3RQb3B1cCAmJiBtX3NlbGVjdFBvcHVwID09IHNlbGVjdFBvcHVwKSB7CiAgICAgICAgIC8vIFRo
YXQgY2xpY2sgdHJpZ2dlcmVkIGEgc2VsZWN0IHBvcHVwIHdoaWNoIGlzIHRoZSBzYW1lIGFzIHRo
ZSBvbmUgdGhhdAogICAgICAgICAvLyB3YXMgc2hvd2luZyBiZWZvcmUgdGhlIGNsaWNrLiAgSXQg
bWVhbnMgdGhlIHVzZXIgY2xpY2tlZCB0aGUgc2VsZWN0Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>