<?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>163217</bug_id>
          
          <creation_ts>2016-10-10 09:33:04 -0700</creation_ts>
          <short_desc>Move NotificationCenter from legacy to new DOM exceptions</short_desc>
          <delta_ts>2016-10-10 14:36:05 -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>Bindings</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>sam</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1238334</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-10-10 09:33:04 -0700</bug_when>
    <thetext>Move NotificationCenter from legacy to new DOM exceptions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238341</commentid>
    <comment_count>1</comment_count>
      <attachid>291115</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-10-10 09:44:41 -0700</bug_when>
    <thetext>Created attachment 291115
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238542</commentid>
    <comment_count>2</comment_count>
      <attachid>291115</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-10 14:36:00 -0700</bug_when>
    <thetext>Comment on attachment 291115
Patch

Clearing flags on attachment: 291115

Committed r207025: &lt;http://trac.webkit.org/changeset/207025&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238543</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-10 14:36:05 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291115</attachid>
            <date>2016-10-10 09:44:41 -0700</date>
            <delta_ts>2016-10-10 14:36:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163217-20161010094120.patch</filename>
            <type>text/plain</type>
            <size>21695</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2OTk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWQ1MTczYmFiMjM3NzZj
YzQyNzk5ZDk2OTNjMTk3ODllYWM4ODRlYi4uYjg2ZjZlMzQxYWNlYjg5ZmQ0OWRiODAxN2NhZWYw
NTAyZDA2YWZiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE2LTEwLTEwICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIE5vdGlmaWNhdGlvbkNl
bnRlciBmcm9tIGxlZ2FjeSB0byBuZXcgRE9NIGV4Y2VwdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MzIxNworCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTW9kdWxlcy9ub3RpZmljYXRpb25zL0RP
TVdpbmRvd05vdGlmaWNhdGlvbnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93Tm90
aWZpY2F0aW9uczo6d2Via2l0Tm90aWZpY2F0aW9ucyk6IFBhc3MgcmVmZXJlbmNlIHRvCisgICAg
ICAgIGRvY3VtZW50IGluc3RlYWQgb2YgcG9pbnRlci4gQWxzbyB1c2UgYXV0byBhbmQgZWFybHkg
cmV0dXJuLgorCisgICAgICAgICogTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbik6IE1vdmUg
Y2hlY2tzIHRoYXQgY2FuIGxlYWQgdG8KKyAgICAgICAgdGhyb3dpbmcgYW4gZXhjZXB0aW9uIG91
dCBvZiB0aGUgY29uc3RydWN0b3IgaW50byB0aGUgY3JlYXRlIGZ1bmN0aW9uLgorICAgICAgICAo
V2ViQ29yZTo6Tm90aWZpY2F0aW9uOjpjcmVhdGUpOiBDaGFuZ2VkIHRvIHVzZSBFeGNlcHRpb25P
ci4gQWxzbyBtb3ZlZAorICAgICAgICBjaGVja3MgdGhhdCBjYW4gbGVhZCB0byB0aHJvd2luZyBh
biBleGNlcHRpb24gaGVyZS4KKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbjo6c2hvdyk6
IFVwZGF0ZSBzaW5jZSBOb3RpZmljYXRpb25Db250cm9sbGVyOjpjbGllbnQKKyAgICAgICAgbm93
IHJldHVybnMgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb246OnBl
cm1pc3Npb24pOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbjo6cmVxdWVz
dFBlcm1pc3Npb24pOiBEaXR0by4KKworICAgICAgICAqIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9O
b3RpZmljYXRpb24uaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAgICAgICAqIE1v
ZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Tm90aWZpY2F0aW9uQ2VudGVyOjpjcmVhdGUpOiBUYWtlIGEgcmVmZXJlbmNlIHRvIHRo
ZSBzY3JpcHQgZXhlY3V0aW9uCisgICAgICAgIGNvbnRleHQgaW5zdGVhZCBvZiBhIHBvaW50ZXIu
CisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb25DZW50ZXI6Ok5vdGlmaWNhdGlvbkNlbnRl
cik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uQ2VudGVyOjpjcmVhdGVO
b3RpZmljYXRpb24pOiBVc2UgRXhjZXB0aW9uT3IuCisgICAgICAgIChXZWJDb3JlOjpOb3RpZmlj
YXRpb25DZW50ZXI6OnJlcXVlc3RQZXJtaXNzaW9uKTogVGFrZSBhbiBydmFsdWUgcmVmZXJlbmNl
LgorCisgICAgICAgICogTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5o
OiBVc2UgcHJhZ21hIG9uY2UuCisgICAgICAgIE1hcmtlZCB0aGUgY2xhc3MgZmluYWwuIFVwZGF0
ZWQgZm9yIGNoYW5nZXMgYWJvdmUuCisKKyAgICAgICAgKiBNb2R1bGVzL25vdGlmaWNhdGlvbnMv
Tm90aWZpY2F0aW9uQ2VudGVyLmlkbDogVXNlIG5vbi1sZWdhY3kgZXhjZXB0aW9ucy4KKworICAg
ICAgICAqIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250cm9sbGVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbkNvbnRyb2xsZXI6Ok5vdGlmaWNhdGlvbkNv
bnRyb2xsZXIpOiBVc2UgYSByZWZlcmVuY2UgcmF0aGVyCisgICAgICAgIHRoYW4gYSBwb2ludGVy
IGZvciBtX2NsaWVudCwgc2luY2UgaXQgaXMgbmV2ZXIgbnVsbC4KKyAgICAgICAgKFdlYkNvcmU6
Ok5vdGlmaWNhdGlvbkNvbnRyb2xsZXI6On5Ob3RpZmljYXRpb25Db250cm9sbGVyKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb25Db250cm9sbGVyOjpjbGllbnRGcm9tKTog
VXBkYXRlZCBmb3IgdGhlIGNoYW5nZSBhYm92ZS4KKworICAgICAgICAqIE1vZHVsZXMvbm90aWZp
Y2F0aW9ucy9Ob3RpZmljYXRpb25Db250cm9sbGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBjaGFuZ2Ug
YWJvdmUuCisKKyAgICAgICAgKiBNb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyR2xvYmFsU2Nv
cGVOb3RpZmljYXRpb25zLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3Bl
Tm90aWZpY2F0aW9uczo6d2Via2l0Tm90aWZpY2F0aW9ucyk6IFVwZGF0ZWQgdG8KKyAgICAgICAg
cGFzcyBhIHJlZmVyZW5jZSBmb3IgdGhlIHNjcmlwdCBleGVjdXRpb24gY29udGV4dC4gQWxzbyBh
ZGRlZCBGSVhNRSBhYm91dCB0aGUKKyAgICAgICAgZmFjdCB0aGF0IHRoZSBjbGllbnQgaXMgYWx3
YXlzIG51bGwuCisKIDIwMTYtMTAtMTAgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBp
Z2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjIwNjczMSk6IFtTT1VQXSBOZXR3b3Jr
IHByb2Nlc3MgY3Jhc2ggaW4gZ290SGVhZGVyc0NhbGxiYWNrCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXgg
MTViNmQ0MWNjZGU4OGFjZDI4OTg1ZDRlNDE1YzcxZTk1ZDNkMjAwOC4uMjljOTgzY2VlMjllNmRk
ZjcyYzNmODA2MjcxZDEwODE3ZDQyNmRiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEz
IEBACisyMDE2LTEwLTEwICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAg
ICBNb3ZlIE5vdGlmaWNhdGlvbkNlbnRlciBmcm9tIGxlZ2FjeSB0byBuZXcgRE9NIGV4Y2VwdGlv
bnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MzIx
NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2Vi
Vmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9ub3RpZmljYXRpb25JREZvclRl
c3Rpbmc6XSk6IFBhc3MgcmVmZXJlbmNlIHRvIHBhZ2UgcmF0aGVyIHRoYW4gcG9pbnRlci4KKwog
MjAxNi0xMC0wOSAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAg
ICAgICBTdXBwb3J0IElucHV0RXZlbnQuaW5wdXRUeXBlIGZvciB0aGUgbmV3IElucHV0RXZlbnQg
c3BlYwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL0RP
TVdpbmRvd05vdGlmaWNhdGlvbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmlj
YXRpb25zL0RPTVdpbmRvd05vdGlmaWNhdGlvbnMuY3BwCmluZGV4IDQ1MmVmNTEzMTI0MzVhNWU1
NTA0YjIwMzcxNWM5OTlkMDc2ZWNhNWUuLmJlOWQ2ODFiMzBhNDM3ODM2MjljZGY5OWZkNmI0ZGY1
Y2I0YjQ1MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9u
cy9ET01XaW5kb3dOb3RpZmljYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L25vdGlmaWNhdGlvbnMvRE9NV2luZG93Tm90aWZpY2F0aW9ucy5jcHAKQEAgLTEwMSwyMyArMTAx
LDI0IEBAIHZvaWQgRE9NV2luZG93Tm90aWZpY2F0aW9uczo6d2lsbERldGFjaEdsb2JhbE9iamVj
dEZyb21GcmFtZSgpCiBOb3RpZmljYXRpb25DZW50ZXIqIERPTVdpbmRvd05vdGlmaWNhdGlvbnM6
OndlYmtpdE5vdGlmaWNhdGlvbnMoKQogewogICAgIGlmICghbV93aW5kb3ctPmlzQ3VycmVudGx5
RGlzcGxheWVkSW5GcmFtZSgpKQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIG51
bGxwdHI7CiAKICAgICBpZiAobV9ub3RpZmljYXRpb25DZW50ZXIpCiAgICAgICAgIHJldHVybiBt
X25vdGlmaWNhdGlvbkNlbnRlci5nZXQoKTsKIAotICAgIERvY3VtZW50KiBkb2N1bWVudCA9IG1f
d2luZG93LT5kb2N1bWVudCgpOworICAgIGF1dG8qIGRvY3VtZW50ID0gbV93aW5kb3ctPmRvY3Vt
ZW50KCk7CiAgICAgaWYgKCFkb2N1bWVudCkKLSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJl
dHVybiBudWxscHRyOwogICAgIAotICAgIFBhZ2UqIHBhZ2UgPSBkb2N1bWVudC0+cGFnZSgpOwor
ICAgIGF1dG8qIHBhZ2UgPSBkb2N1bWVudC0+cGFnZSgpOwogICAgIGlmICghcGFnZSkKLSAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgTm90aWZpY2F0aW9u
Q2xpZW50KiBwcm92aWRlciA9IE5vdGlmaWNhdGlvbkNvbnRyb2xsZXI6OmNsaWVudEZyb20ocGFn
ZSk7Ci0gICAgaWYgKHByb3ZpZGVyKSAKLSAgICAgICAgbV9ub3RpZmljYXRpb25DZW50ZXIgPSBO
b3RpZmljYXRpb25DZW50ZXI6OmNyZWF0ZShkb2N1bWVudCwgcHJvdmlkZXIpOyAgICAKKyAgICBh
dXRvKiBwcm92aWRlciA9IE5vdGlmaWNhdGlvbkNvbnRyb2xsZXI6OmNsaWVudEZyb20oKnBhZ2Up
OworICAgIGlmICghcHJvdmlkZXIpCisgICAgICAgIHJldHVybiBudWxscHRyOwogCisgICAgbV9u
b3RpZmljYXRpb25DZW50ZXIgPSBOb3RpZmljYXRpb25DZW50ZXI6OmNyZWF0ZSgqZG9jdW1lbnQs
IHByb3ZpZGVyKTsKICAgICByZXR1cm4gbV9ub3RpZmljYXRpb25DZW50ZXIuZ2V0KCk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmlj
YXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvbi5jcHAKaW5kZXggNjgyYzdhMjU5NTI2NmViMDhkMTljM2RkNjAwZDM1NTIwZmQ1NzQzOC4u
NTIwOWU3NDMzOTJlMTdiNTc3NWYyOWZhMjI2MzIwZGEyZmQwNTUxNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAKQEAg
LTUwLDIyICs1MCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICNpZiBFTkFCTEUoTEVHQUNZ
X05PVElGSUNBVElPTlMpCiAKLU5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNvbnN0IFN0cmlu
ZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgYm9keSwgY29uc3QgU3RyaW5nJiBpY29uVVJJLCBTY3Jp
cHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0
aW9uQ2VudGVyJiBub3RpZmljYXRpb25DZW50ZXIpCitOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlv
bihjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHksIFVSTCYmIGljb25VUkws
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIE5vdGlmaWNhdGlvbkNlbnRlciYgbm90
aWZpY2F0aW9uQ2VudGVyKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KCZjb250ZXh0KQorICAgICwg
bV9pY29uKFdURk1vdmUoaWNvblVSTCkpCiAgICAgLCBtX3RpdGxlKHRpdGxlKQogICAgICwgbV9i
b2R5KGJvZHkpCiAgICAgLCBtX25vdGlmaWNhdGlvbkNlbnRlcigmbm90aWZpY2F0aW9uQ2VudGVy
KQogewotICAgIGlmIChtX25vdGlmaWNhdGlvbkNlbnRlci0+Y2hlY2tQZXJtaXNzaW9uKCkgIT0g
Tm90aWZpY2F0aW9uQ2xpZW50OjpQZXJtaXNzaW9uQWxsb3dlZCkgewotICAgICAgICBlYyA9IFNF
Q1VSSVRZX0VSUjsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIG1faWNvbiA9IGljb25V
UkkuaXNFbXB0eSgpID8gVVJMKCkgOiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmNvbXBsZXRl
VVJMKGljb25VUkkpOwotICAgIGlmICghbV9pY29uLmlzRW1wdHkoKSAmJiAhbV9pY29uLmlzVmFs
aWQoKSkgewotICAgICAgICBlYyA9IFNZTlRBWF9FUlI7Ci0gICAgICAgIHJldHVybjsKLSAgICB9
CiB9CiAKICNlbmRpZgpAQCAtOTMsMTEgKzg0LDE4IEBAIE5vdGlmaWNhdGlvbjo6fk5vdGlmaWNh
dGlvbigpCiAKICNpZiBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAKLVJlZjxOb3RpZmlj
YXRpb24+IE5vdGlmaWNhdGlvbjo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0
cmluZyYgYm9keSwgY29uc3QgU3RyaW5nJiBpY29uVVJJLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uQ2VudGVyJiBwcm92aWRl
cikKK0V4Y2VwdGlvbk9yPFJlZjxOb3RpZmljYXRpb24+PiBOb3RpZmljYXRpb246OmNyZWF0ZShj
b25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHksIGNvbnN0IFN0cmluZyYgaWNv
blVSTCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgTm90aWZpY2F0aW9uQ2VudGVy
JiBwcm92aWRlcikKIHsgCi0gICAgYXV0byBub3RpZmljYXRpb24gPSBhZG9wdFJlZigqbmV3IE5v
dGlmaWNhdGlvbih0aXRsZSwgYm9keSwgaWNvblVSSSwgY29udGV4dCwgZWMsIHByb3ZpZGVyKSk7
CisgICAgaWYgKHByb3ZpZGVyLmNoZWNrUGVybWlzc2lvbigpICE9IE5vdGlmaWNhdGlvbkNsaWVu
dDo6UGVybWlzc2lvbkFsbG93ZWQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBTRUNVUklU
WV9FUlIgfTsKKworICAgIFVSTCBjb21wbGV0ZWRJY29uVVJMID0gaWNvblVSTC5pc0VtcHR5KCkg
PyBVUkwoKSA6IGNvbnRleHQuY29tcGxldGVVUkwoaWNvblVSTCk7CisgICAgaWYgKCFjb21wbGV0
ZWRJY29uVVJMLmlzRW1wdHkoKSAmJiAhY29tcGxldGVkSWNvblVSTC5pc1ZhbGlkKCkpCisgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBTWU5UQVhfRVJSIH07CisKKyAgICBhdXRvIG5vdGlmaWNh
dGlvbiA9IGFkb3B0UmVmKCpuZXcgTm90aWZpY2F0aW9uKHRpdGxlLCBib2R5LCBXVEZNb3ZlKGNv
bXBsZXRlZEljb25VUkwpLCBjb250ZXh0LCBwcm92aWRlcikpOwogICAgIG5vdGlmaWNhdGlvbi5n
ZXQoKS5zdXNwZW5kSWZOZWVkZWQoKTsKLSAgICByZXR1cm4gbm90aWZpY2F0aW9uOworICAgIHJl
dHVybiBXVEZNb3ZlKG5vdGlmaWNhdGlvbik7CiB9CiAKICNlbmRpZgpAQCAtMTQ2LDcgKzE0NCw3
IEBAIHZvaWQgTm90aWZpY2F0aW9uOjpzaG93KCkKICAgICAgICAgYXV0byogcGFnZSA9IGRvd25j
YXN0PERvY3VtZW50Pigqc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKS5wYWdlKCk7CiAgICAgICAg
IGlmICghcGFnZSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgaWYgKE5vdGlmaWNhdGlv
bkNvbnRyb2xsZXI6OmZyb20ocGFnZSktPmNsaWVudCgpLT5jaGVja1Blcm1pc3Npb24oc2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpKSAhPSBOb3RpZmljYXRpb25DbGllbnQ6OlBlcm1pc3Npb25BbGxv
d2VkKSB7CisgICAgICAgIGlmIChOb3RpZmljYXRpb25Db250cm9sbGVyOjpmcm9tKHBhZ2UpLT5j
bGllbnQoKS5jaGVja1Blcm1pc3Npb24oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKSAhPSBOb3Rp
ZmljYXRpb25DbGllbnQ6OlBlcm1pc3Npb25BbGxvd2VkKSB7CiAgICAgICAgICAgICBkaXNwYXRj
aEVycm9yRXZlbnQoKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQpAQCAtMjI0LDcg
KzIyMiw3IEBAIHZvaWQgTm90aWZpY2F0aW9uOjpkaXNwYXRjaEVycm9yRXZlbnQoKQogCiBTdHJp
bmcgTm90aWZpY2F0aW9uOjpwZXJtaXNzaW9uKERvY3VtZW50JiBkb2N1bWVudCkKIHsKLSAgICBy
ZXR1cm4gcGVybWlzc2lvblN0cmluZyhOb3RpZmljYXRpb25Db250cm9sbGVyOjpmcm9tKGRvY3Vt
ZW50LnBhZ2UoKSktPmNsaWVudCgpLT5jaGVja1Blcm1pc3Npb24oJmRvY3VtZW50KSk7CisgICAg
cmV0dXJuIHBlcm1pc3Npb25TdHJpbmcoTm90aWZpY2F0aW9uQ29udHJvbGxlcjo6ZnJvbShkb2N1
bWVudC5wYWdlKCkpLT5jbGllbnQoKS5jaGVja1Blcm1pc3Npb24oJmRvY3VtZW50KSk7CiB9CiAK
IFN0cmluZyBOb3RpZmljYXRpb246OnBlcm1pc3Npb25TdHJpbmcoTm90aWZpY2F0aW9uQ2xpZW50
OjpQZXJtaXNzaW9uIHBlcm1pc3Npb24pCkBAIC0yNDMsNyArMjQxLDcgQEAgU3RyaW5nIE5vdGlm
aWNhdGlvbjo6cGVybWlzc2lvblN0cmluZyhOb3RpZmljYXRpb25DbGllbnQ6OlBlcm1pc3Npb24g
cGVybWlzc2lvbikKIAogdm9pZCBOb3RpZmljYXRpb246OnJlcXVlc3RQZXJtaXNzaW9uKERvY3Vt
ZW50JiBkb2N1bWVudCwgUmVmUHRyPE5vdGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFjaz4mJiBj
YWxsYmFjaykKIHsKLSAgICBOb3RpZmljYXRpb25Db250cm9sbGVyOjpmcm9tKGRvY3VtZW50LnBh
Z2UoKSktPmNsaWVudCgpLT5yZXF1ZXN0UGVybWlzc2lvbigmZG9jdW1lbnQsIFdURk1vdmUoY2Fs
bGJhY2spKTsKKyAgICBOb3RpZmljYXRpb25Db250cm9sbGVyOjpmcm9tKGRvY3VtZW50LnBhZ2Uo
KSktPmNsaWVudCgpLnJlcXVlc3RQZXJtaXNzaW9uKCZkb2N1bWVudCwgV1RGTW92ZShjYWxsYmFj
aykpOwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90
aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZp
Y2F0aW9ucy9Ob3RpZmljYXRpb24uaAppbmRleCA3ZGViMDRiMGI1YWI4ZTYyMTRlNDVmNzgwNTgz
YzI4ZmIyOWRiNjQ3Li45OGYwNjlkZWQwNzI5ZjY1ODMxZTg2MGJiNGE0MDYwMjM4YWE3ZTdjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0
aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvbi5oCkBAIC0zNSwxNCArMzUsMTIgQEAKIAogI2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5o
IgogI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNp
bmNsdWRlICJOb3RpZmljYXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJUaW1lci5oIgogI2luY2x1
ZGUgIlVSTC5oIgogI2luY2x1ZGUgIldyaXRpbmdNb2RlLmgiCiAKLSNpZiBFTkFCTEUoTk9USUZJ
Q0FUSU9OUykKLSNpbmNsdWRlICJUaW1lci5oIgotI2VuZGlmCi0KIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogY2xhc3MgRG9jdW1lbnQ7CkBAIC01NSw3ICs1Myw3IEBAIGNsYXNzIE5vdGlmaWNhdGlv
biBmaW5hbCA6IHB1YmxpYyBSZWZDb3VudGVkPE5vdGlmaWNhdGlvbj4sIHB1YmxpYyBBY3RpdmVE
T01PYmplCiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAjaWYgRU5BQkxF
KExFR0FDWV9OT1RJRklDQVRJT05TKQotICAgIHN0YXRpYyBSZWY8Tm90aWZpY2F0aW9uPiBjcmVh
dGUoY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiBib2R5LCBjb25zdCBTdHJpbmcm
IGljb25VUkwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBFeGNlcHRpb25Db2RlJiwgTm90aWZp
Y2F0aW9uQ2VudGVyJik7CisgICAgc3RhdGljIEV4Y2VwdGlvbk9yPFJlZjxOb3RpZmljYXRpb24+
PiBjcmVhdGUoY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiBib2R5LCBjb25zdCBT
dHJpbmcmIGljb25VUkwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBOb3RpZmljYXRpb25DZW50
ZXImKTsKICNlbmRpZgogCiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCkBAIC0xMTEsNyArMTA5
LDcgQEAgcHVibGljOgogCiBwcml2YXRlOgogI2lmIEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9O
UykKLSAgICBOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiBi
b2R5LCBjb25zdCBTdHJpbmcmIGljb25VUkwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBFeGNl
cHRpb25Db2RlJiwgTm90aWZpY2F0aW9uQ2VudGVyJik7CisgICAgTm90aWZpY2F0aW9uKGNvbnN0
IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgYm9keSwgVVJMJiYgaWNvblVSTCwgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYsIE5vdGlmaWNhdGlvbkNlbnRlciYpOwogI2VuZGlmCiAKICNpZiBF
TkFCTEUoTk9USUZJQ0FUSU9OUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5jcHAKaW5kZXggZGI2MWFiZmRj
NWQ0ZDViZTQ2Y2JhYTA5NDZlMTY2ODVhOGVjOTc0ZC4uYTkyOThmNzUyNWNlN2E4ODRhMDVhZTJl
NDczZGUxY2FiMTBlYmZlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3Rp
ZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5jcHAKQEAgLTM1LDYgKzM1LDcg
QEAKIAogI2luY2x1ZGUgIk5vdGlmaWNhdGlvbkNlbnRlci5oIgogCisjaW5jbHVkZSAiRXhjZXB0
aW9uQ29kZS5oIgogI2luY2x1ZGUgIk5vdGlmaWNhdGlvbi5oIgogI2luY2x1ZGUgIlNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgpAQCAtNDIsMTUg
KzQzLDE1IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotUmVmPE5vdGlmaWNhdGlvbkNlbnRl
cj4gTm90aWZpY2F0aW9uQ2VudGVyOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29u
dGV4dCwgTm90aWZpY2F0aW9uQ2xpZW50KiBjbGllbnQpCitSZWY8Tm90aWZpY2F0aW9uQ2VudGVy
PiBOb3RpZmljYXRpb25DZW50ZXI6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250
ZXh0LCBOb3RpZmljYXRpb25DbGllbnQqIGNsaWVudCkKIHsKICAgICBhdXRvIG5vdGlmaWNhdGlv
bkNlbnRlciA9IGFkb3B0UmVmKCpuZXcgTm90aWZpY2F0aW9uQ2VudGVyKGNvbnRleHQsIGNsaWVu
dCkpOwogICAgIG5vdGlmaWNhdGlvbkNlbnRlci0+c3VzcGVuZElmTmVlZGVkKCk7CiAgICAgcmV0
dXJuIG5vdGlmaWNhdGlvbkNlbnRlcjsKIH0KIAotTm90aWZpY2F0aW9uQ2VudGVyOjpOb3RpZmlj
YXRpb25DZW50ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgTm90aWZpY2F0aW9u
Q2xpZW50KiBjbGllbnQpCi0gICAgOiBBY3RpdmVET01PYmplY3QoY29udGV4dCkKK05vdGlmaWNh
dGlvbkNlbnRlcjo6Tm90aWZpY2F0aW9uQ2VudGVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNv
bnRleHQsIE5vdGlmaWNhdGlvbkNsaWVudCogY2xpZW50KQorICAgIDogQWN0aXZlRE9NT2JqZWN0
KCZjb250ZXh0KQogICAgICwgbV9jbGllbnQoY2xpZW50KQogICAgICwgbV90aW1lcihbdGhpc10o
KSB7IHRpbWVyRmlyZWQoKTsgfSkKIHsKQEAgLTU4LDEzICs1OSwxMSBAQCBOb3RpZmljYXRpb25D
ZW50ZXI6Ok5vdGlmaWNhdGlvbkNlbnRlcihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0
LCBOb3RpZmljYQogCiAjaWYgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogCi1SZWZQdHI8
Tm90aWZpY2F0aW9uPiBOb3RpZmljYXRpb25DZW50ZXI6OmNyZWF0ZU5vdGlmaWNhdGlvbihjb25z
dCBTdHJpbmcmIGljb25VUkksIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgYm9k
eSwgRXhjZXB0aW9uQ29kZSYgZWMpCitFeGNlcHRpb25PcjxSZWY8Tm90aWZpY2F0aW9uPj4gTm90
aWZpY2F0aW9uQ2VudGVyOjpjcmVhdGVOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiBpY29uVVJJ
LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHkpCiB7Ci0gICAgaWYgKCFt
X2NsaWVudCB8fCAhc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKSB7Ci0gICAgICAgIGVjID0gSU5W
QUxJRF9TVEFURV9FUlI7Ci0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIH0KLSAgICByZXR1
cm4gTm90aWZpY2F0aW9uOjpjcmVhdGUodGl0bGUsIGJvZHksIGljb25VUkksICpzY3JpcHRFeGVj
dXRpb25Db250ZXh0KCksIGVjLCAqdGhpcyk7CisgICAgaWYgKCFtX2NsaWVudCB8fCAhc2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSU5WQUxJRF9T
VEFURV9FUlIgfTsKKyAgICByZXR1cm4gTm90aWZpY2F0aW9uOjpjcmVhdGUodGl0bGUsIGJvZHks
IGljb25VUkksICpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksICp0aGlzKTsKIH0KIAogaW50IE5v
dGlmaWNhdGlvbkNlbnRlcjo6Y2hlY2tQZXJtaXNzaW9uKCkKQEAgLTg1LDcgKzg0LDcgQEAgaW50
IE5vdGlmaWNhdGlvbkNlbnRlcjo6Y2hlY2tQZXJtaXNzaW9uKCkKICAgICByZXR1cm4gbV9jbGll
bnQtPmNoZWNrUGVybWlzc2lvbihzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpOwogfQogCi12b2lk
IE5vdGlmaWNhdGlvbkNlbnRlcjo6cmVxdWVzdFBlcm1pc3Npb24oY29uc3QgUmVmUHRyPFZvaWRD
YWxsYmFjaz4mIGNhbGxiYWNrKQordm9pZCBOb3RpZmljYXRpb25DZW50ZXI6OnJlcXVlc3RQZXJt
aXNzaW9uKFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgY2FsbGJhY2spCiB7CiAgICAgaWYgKCFtX2Ns
aWVudCB8fCAhc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQogICAgICAgICByZXR1cm47CkBAIC0x
MDMsMTIgKzEwMiwxMiBAQCB2b2lkIE5vdGlmaWNhdGlvbkNlbnRlcjo6cmVxdWVzdFBlcm1pc3Np
b24oY29uc3QgUmVmUHRyPFZvaWRDYWxsYmFjaz4mIGNhbGxiYWNrKQogICAgICAgICB9KTsKICAg
ICAgICAgcmV0dXJuOwogICAgIGNhc2UgU2VjdXJpdHlPcmlnaW46OkFzazoKLSAgICAgICAgbV9j
bGllbnQtPnJlcXVlc3RQZXJtaXNzaW9uKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgY2FsbGJh
Y2suZ2V0KCkpOworICAgICAgICBtX2NsaWVudC0+cmVxdWVzdFBlcm1pc3Npb24oc2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCgpLCBXVEZNb3ZlKGNhbGxiYWNrKSk7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICBtX2NsaWVudC0+cmVxdWVzdFBl
cm1pc3Npb24oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLCBjYWxsYmFjay5nZXQoKSk7CisgICAg
bV9jbGllbnQtPnJlcXVlc3RQZXJtaXNzaW9uKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgV1RG
TW92ZShjYWxsYmFjaykpOwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaAppbmRleCBmZmVj
OWFiZDRiYTcyMTYxZjIyZDViMzUzY2IyNmM3MWI1ZjE0YmI2Li40NjQ2ZTE4MmUxNGFiNjVlODE3
YTMzNmI3MmFiNzg1Yzk2ZTMzOWEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5oCkBAIC0yOSwxMSArMjks
MTAgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBOb3RpZmljYXRpb25DZW50ZXJf
aAotI2RlZmluZSBOb3RpZmljYXRpb25DZW50ZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
ICJBY3RpdmVET01PYmplY3QuaCIKLSNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCisjaW5jbHVk
ZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJUaW1lci5oIgogI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+CiAKQEAgLTQ1LDE1ICs0NCwxNSBAQCBjbGFzcyBOb3RpZmljYXRpb247CiBjbGFz
cyBOb3RpZmljYXRpb25DbGllbnQ7CiBjbGFzcyBWb2lkQ2FsbGJhY2s7CiAKLWNsYXNzIE5vdGlm
aWNhdGlvbkNlbnRlciA6IHB1YmxpYyBSZWZDb3VudGVkPE5vdGlmaWNhdGlvbkNlbnRlcj4sIHBy
aXZhdGUgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIE5vdGlmaWNhdGlvbkNlbnRlciBmaW5hbCA6
IHB1YmxpYyBSZWZDb3VudGVkPE5vdGlmaWNhdGlvbkNlbnRlcj4sIHByaXZhdGUgQWN0aXZlRE9N
T2JqZWN0IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPE5vdGlmaWNhdGlvbkNlbnRlcj4gY3Jl
YXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBOb3RpZmljYXRpb25DbGllbnQqKTsKKyAgICBz
dGF0aWMgUmVmPE5vdGlmaWNhdGlvbkNlbnRlcj4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQmLCBOb3RpZmljYXRpb25DbGllbnQqKTsKIAogI2lmIEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FU
SU9OUykKLSAgICBSZWZQdHI8Tm90aWZpY2F0aW9uPiBjcmVhdGVOb3RpZmljYXRpb24oY29uc3Qg
U3RyaW5nJiBpY29uVVJJLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHks
IEV4Y2VwdGlvbkNvZGUmKTsKKyAgICBFeGNlcHRpb25PcjxSZWY8Tm90aWZpY2F0aW9uPj4gY3Jl
YXRlTm90aWZpY2F0aW9uKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgY29uc3QgU3RyaW5nJiB0aXRs
ZSwgY29uc3QgU3RyaW5nJiBib2R5KTsKIAogICAgIGludCBjaGVja1Blcm1pc3Npb24oKTsKLSAg
ICB2b2lkIHJlcXVlc3RQZXJtaXNzaW9uKGNvbnN0IFJlZlB0cjxWb2lkQ2FsbGJhY2s+Jik7Cisg
ICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihSZWZQdHI8Vm9pZENhbGxiYWNrPiYmKTsKICNlbmRp
ZgogCiAgICAgTm90aWZpY2F0aW9uQ2xpZW50KiBjbGllbnQoKSBjb25zdCB7IHJldHVybiBtX2Ns
aWVudDsgfQpAQCAtNjEsMTEgKzYwLDExIEBAIHB1YmxpYzoKICAgICB1c2luZyBBY3RpdmVET01P
YmplY3Q6Omhhc1BlbmRpbmdBY3Rpdml0eTsKIAogcHJpdmF0ZToKLSAgICBOb3RpZmljYXRpb25D
ZW50ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIE5vdGlmaWNhdGlvbkNsaWVudCopOworICAg
IE5vdGlmaWNhdGlvbkNlbnRlcihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgTm90aWZpY2F0aW9u
Q2xpZW50Kik7CiAKLSAgICB2b2lkIHN0b3AoKSBvdmVycmlkZTsKLSAgICBjb25zdCBjaGFyKiBh
Y3RpdmVET01PYmplY3ROYW1lKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5TdXNwZW5k
Rm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBzdG9wKCkg
ZmluYWw7CisgICAgY29uc3QgY2hhciogYWN0aXZlRE9NT2JqZWN0TmFtZSgpIGNvbnN0IGZpbmFs
OworICAgIGJvb2wgY2FuU3VzcGVuZEZvckRvY3VtZW50U3VzcGVuc2lvbigpIGNvbnN0IGZpbmFs
OwogCiAgICAgdm9pZCB0aW1lckZpcmVkKCk7CiAKQEAgLTc3LDUgKzc2LDMgQEAgcHJpdmF0ZToK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShOT1RJRklDQVRJT05T
KSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCi0KLSNlbmRpZiAvLyBOb3RpZmljYXRp
b25DZW50ZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRp
b25zL05vdGlmaWNhdGlvbkNlbnRlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbAppbmRleCAzNmNiMjM5OWFiZTUzMTA3ZmJh
MDU2YTBjNTkzNGYwYmFhZDA5OTRjLi4wN2EzODBmYzQ4NzFhNDU3NzUyZjI1NWVjN2UyMzc2ODYz
NDY3NDZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMv
Tm90aWZpY2F0aW9uQ2VudGVyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbApAQCAtMzQsNyArMzQsNyBAQAogICAgIENv
bmRpdGlvbmFsPUxFR0FDWV9OT1RJRklDQVRJT05TLAogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAog
XSBpbnRlcmZhY2UgTm90aWZpY2F0aW9uQ2VudGVyIHsKLSAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gTm90aWZpY2F0aW9uIGNyZWF0ZU5vdGlmaWNhdGlvbihET01TdHJpbmcgaWNvblVybCwg
RE9NU3RyaW5nIHRpdGxlLCBET01TdHJpbmcgYm9keSk7CisgICBbTWF5VGhyb3dFeGNlcHRpb25d
IE5vdGlmaWNhdGlvbiBjcmVhdGVOb3RpZmljYXRpb24oRE9NU3RyaW5nIGljb25VcmwsIERPTVN0
cmluZyB0aXRsZSwgRE9NU3RyaW5nIGJvZHkpOwogCiAgICBsb25nIGNoZWNrUGVybWlzc2lvbigp
OwogICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihvcHRpb25hbCBWb2lkQ2FsbGJhY2s/IGNhbGxi
YWNrKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9O
b3RpZmljYXRpb25Db250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZp
Y2F0aW9ucy9Ob3RpZmljYXRpb25Db250cm9sbGVyLmNwcAppbmRleCAxZjFiYzgyNTA1M2MyMzAy
YjhiYjg4NjRjMTQ2YjA1ODA1MDAyYzQ0Li5mYzA4YjI3NmYxMDFjNTViZWRjOGRkMThlY2YwYmZj
ZWJlOWUxOWU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC0zMywyMSArMzMs
MjIgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogTm90aWZpY2F0aW9uQ29udHJvbGxlcjo6Tm90
aWZpY2F0aW9uQ29udHJvbGxlcihOb3RpZmljYXRpb25DbGllbnQqIGNsaWVudCkKLSAgICA6IG1f
Y2xpZW50KGNsaWVudCkKKyAgICA6IG1fY2xpZW50KCpjbGllbnQpCiB7CisgICAgQVNTRVJUKGNs
aWVudCk7CiB9CiAKIE5vdGlmaWNhdGlvbkNvbnRyb2xsZXI6On5Ob3RpZmljYXRpb25Db250cm9s
bGVyKCkKIHsKLSAgICBpZiAobV9jbGllbnQpCi0gICAgICAgIG1fY2xpZW50LT5ub3RpZmljYXRp
b25Db250cm9sbGVyRGVzdHJveWVkKCk7CisgICAgbV9jbGllbnQubm90aWZpY2F0aW9uQ29udHJv
bGxlckRlc3Ryb3llZCgpOwogfQogCi1Ob3RpZmljYXRpb25DbGllbnQqIE5vdGlmaWNhdGlvbkNv
bnRyb2xsZXI6OmNsaWVudEZyb20oUGFnZSogcGFnZSkKK05vdGlmaWNhdGlvbkNsaWVudCogTm90
aWZpY2F0aW9uQ29udHJvbGxlcjo6Y2xpZW50RnJvbShQYWdlJiBwYWdlKQogewotICAgIGlmIChO
b3RpZmljYXRpb25Db250cm9sbGVyKiBjb250cm9sbGVyID0gTm90aWZpY2F0aW9uQ29udHJvbGxl
cjo6ZnJvbShwYWdlKSkKLSAgICAgICAgcmV0dXJuIGNvbnRyb2xsZXItPmNsaWVudCgpOwotICAg
IHJldHVybiAwOworICAgIGF1dG8qIGNvbnRyb2xsZXIgPSBOb3RpZmljYXRpb25Db250cm9sbGVy
Ojpmcm9tKCZwYWdlKTsKKyAgICBpZiAoIWNvbnRyb2xsZXIpCisgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgIHJldHVybiAmY29udHJvbGxlci0+Y2xpZW50KCk7CiB9CiAKIGNvbnN0IGNoYXIq
IE5vdGlmaWNhdGlvbkNvbnRyb2xsZXI6OnN1cHBsZW1lbnROYW1lKCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250cm9sbGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29u
dHJvbGxlci5oCmluZGV4IDQyNzc0Mjc1MjcyMzUzYzFlNDEyNzExZWU3NWIwYmIzYTcxNWZmYzYu
LjI1ZmNhNzQyMjAzZWVhMGVhYmM5MjlkOWI0Mzc1ODM5MGFhOWZlMTcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250cm9sbGVy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlv
bkNvbnRyb2xsZXIuaApAQCAtMjMsMTQgKzIzLDEyIEBACiAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogKi8KIAot
I2lmbmRlZiBOb3RpZmljYXRpb25Db250cm9sbGVyX2gKLSNkZWZpbmUgTm90aWZpY2F0aW9uQ29u
dHJvbGxlcl9oCisjcHJhZ21hIG9uY2UKIAogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBF
TkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVk
ZSA8d3RmL0ZvcndhcmQuaD4KLSNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCkBAIC0zOCwyMyArMzYsMjAgQEAgY2xhc3MgTm90aWZpY2F0aW9uQ2xp
ZW50OwogCiBjbGFzcyBOb3RpZmljYXRpb25Db250cm9sbGVyIDogcHVibGljIFN1cHBsZW1lbnQ8
UGFnZT4gewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotICAgIFdURl9NQUtFX05PTkNP
UFlBQkxFKE5vdGlmaWNhdGlvbkNvbnRyb2xsZXIpOwogcHVibGljOgogICAgIGV4cGxpY2l0IE5v
dGlmaWNhdGlvbkNvbnRyb2xsZXIoTm90aWZpY2F0aW9uQ2xpZW50Kik7CiAgICAgfk5vdGlmaWNh
dGlvbkNvbnRyb2xsZXIoKTsKIAogICAgIHN0YXRpYyBjb25zdCBjaGFyKiBzdXBwbGVtZW50TmFt
ZSgpOwogICAgIHN0YXRpYyBOb3RpZmljYXRpb25Db250cm9sbGVyKiBmcm9tKFBhZ2UqIHBhZ2Up
IHsgcmV0dXJuIHN0YXRpY19jYXN0PE5vdGlmaWNhdGlvbkNvbnRyb2xsZXIqPihTdXBwbGVtZW50
PFBhZ2U+Ojpmcm9tKHBhZ2UsIHN1cHBsZW1lbnROYW1lKCkpKTsgfQotICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBOb3RpZmljYXRpb25DbGllbnQqIGNsaWVudEZyb20oUGFnZSopOworICAgIFdF
QkNPUkVfRVhQT1JUIHN0YXRpYyBOb3RpZmljYXRpb25DbGllbnQqIGNsaWVudEZyb20oUGFnZSYp
OworCisgICAgTm90aWZpY2F0aW9uQ2xpZW50JiBjbGllbnQoKSB7IHJldHVybiBtX2NsaWVudDsg
fQogCi0gICAgTm90aWZpY2F0aW9uQ2xpZW50KiBjbGllbnQoKSB7IHJldHVybiBtX2NsaWVudDsg
fQotICAgIAogcHJpdmF0ZToKLSAgICBOb3RpZmljYXRpb25DbGllbnQqIG1fY2xpZW50OworICAg
IE5vdGlmaWNhdGlvbkNsaWVudCYgbV9jbGllbnQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9O
T1RJRklDQVRJT05TKQotCi0jZW5kaWYgLy8gTm90aWZpY2F0aW9uQ29udHJvbGxlcl9oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyR2xvYmFs
U2NvcGVOb3RpZmljYXRpb25zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0
aW9ucy9Xb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnMuY3BwCmluZGV4IGZhODg2NzQ3YjEw
NDAzYmE4MzcyNjdkYzc1MzNhYmFhNDRjZGZiZjkuLjAyMjE2M2Q0YmY2MTYwZDk5OGVhY2RiYTc3
ZWU0MWNkMWMzMjU3YzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZp
Y2F0aW9ucy9Xb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnMuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Xb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlv
bnMuY3BwCkBAIC02OCw4ICs2OCwxMSBAQCBOb3RpZmljYXRpb25DZW50ZXIqIFdvcmtlckdsb2Jh
bFNjb3BlTm90aWZpY2F0aW9uczo6d2Via2l0Tm90aWZpY2F0aW9ucyhXb3JrZXJHbAogCiBOb3Rp
ZmljYXRpb25DZW50ZXIqIFdvcmtlckdsb2JhbFNjb3BlTm90aWZpY2F0aW9uczo6d2Via2l0Tm90
aWZpY2F0aW9ucygpCiB7CisgICAgLy8gRklYTUU6IEFzIG9mIHRoaXMgd3JpdGluZywgdGhpcyBh
bHdheXMgcGFzc2VzIG51bGxwdHIgZm9yIHRoZSBjbGllbnQuCisgICAgLy8gSWYgaXQgd2Fzbid0
IGZvciB0aGF0LCB0aGUgbm90aWZpY2F0aW9uIGNlbnRlciBjcmVhdGUgZnVuY3Rpb24gY291bGQg
YmUgdGFraW5nIGEgcmVmZXJlbmNlLgorICAgIC8vIEhvdyBpcyBpdCB1c2VmdWwgdG8gY3JlYXRl
IGEgbm90aWZpY2F0aW9uIGNlbnRlciB3aXRoIG5vIGNsaWVudD8KICAgICBpZiAoIW1fbm90aWZp
Y2F0aW9uQ2VudGVyKQotICAgICAgICBtX25vdGlmaWNhdGlvbkNlbnRlciA9IE5vdGlmaWNhdGlv
bkNlbnRlcjo6Y3JlYXRlKG1fY29udGV4dCwgbV9jb250ZXh0LT50aHJlYWQoKS5nZXROb3RpZmlj
YXRpb25DbGllbnQoKSk7CisgICAgICAgIG1fbm90aWZpY2F0aW9uQ2VudGVyID0gTm90aWZpY2F0
aW9uQ2VudGVyOjpjcmVhdGUoKm1fY29udGV4dCwgbV9jb250ZXh0LT50aHJlYWQoKS5nZXROb3Rp
ZmljYXRpb25DbGllbnQoKSk7CiAgICAgcmV0dXJuIG1fbm90aWZpY2F0aW9uQ2VudGVyLmdldCgp
OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0g
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5kZXggNDdjOGZlM2Q2ZmMw
OGNjY2JkMzVjYzAzYmFlMzczNmY1ODdlMTgwZC4uNTNhYTk3NDVlM2M3ZjBmZWFiY2MxYjU0M2Uy
NWE5MTYyNDI5NTlhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJW
aWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpAQCAtOTAw
Miw5ICs5MDAyLDEyIEBAIC0gKHZvaWQpX25vdGlmaWNhdGlvbnNEaWRDbG9zZTooTlNBcnJheSAq
KW5vdGlmaWNhdGlvbklEcwogLSAodWludDY0X3QpX25vdGlmaWNhdGlvbklERm9yVGVzdGluZzoo
SlNWYWx1ZVJlZilqc05vdGlmaWNhdGlvbgogewogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8
fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCisgICAgYXV0byogcGFnZSA9IF9wcml2YXRl
LT5wYWdlOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuIDA7CiAgICAgSlNDb250ZXh0
UmVmIGNvbnRleHQgPSBbW3NlbGYgbWFpbkZyYW1lXSBnbG9iYWxDb250ZXh0XTsKLSAgICBXZWJD
b3JlOjpOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbiA9IEpTTm90aWZpY2F0aW9uOjp0b1dyYXBw
ZWQodG9KUyh0b0pTKGNvbnRleHQpLCBqc05vdGlmaWNhdGlvbikpOwotICAgIHJldHVybiBzdGF0
aWNfY2FzdDxXZWJOb3RpZmljYXRpb25DbGllbnQqPihOb3RpZmljYXRpb25Db250cm9sbGVyOjpj
bGllbnRGcm9tKF9wcml2YXRlLT5wYWdlKSktPm5vdGlmaWNhdGlvbklERm9yVGVzdGluZyhub3Rp
ZmljYXRpb24pOworICAgIGF1dG8qIG5vdGlmaWNhdGlvbiA9IEpTTm90aWZpY2F0aW9uOjp0b1dy
YXBwZWQodG9KUyh0b0pTKGNvbnRleHQpLCBqc05vdGlmaWNhdGlvbikpOworICAgIHJldHVybiBz
dGF0aWNfY2FzdDxXZWJOb3RpZmljYXRpb25DbGllbnQqPihOb3RpZmljYXRpb25Db250cm9sbGVy
OjpjbGllbnRGcm9tKCpwYWdlKSktPm5vdGlmaWNhdGlvbklERm9yVGVzdGluZyhub3RpZmljYXRp
b24pOwogI2Vsc2UKICAgICByZXR1cm4gMDsKICNlbmRpZgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>