<?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>236740</bug_id>
          
          <creation_ts>2022-02-16 15:41:48 -0800</creation_ts>
          <short_desc>Always use ChildChange::Source::Parser when creating input element UA shadow tree contents</short_desc>
          <delta_ts>2022-02-17 16:03:18 -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>Forms</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Cameron McCormack (:heycam)">heycam</reporter>
          <assigned_to name="Cameron McCormack (:heycam)">heycam</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mifenton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1842572</commentid>
    <comment_count>0</comment_count>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2022-02-16 15:41:48 -0800</bug_when>
    <thetext>When creating an input element&apos;s UA shadow tree, we currently use a ChildChange::Source value that depends on whether the input element itself was parser- or script-inserted.  But since UA shadow trees are not exposed to content, and we don&apos;t have any dependency on the extra work that inserting using ChildChange::Source::API does, we can use ChildChange::Source::Parser unconditionally.

Local testing showed this scored a 0.1% Speedometer 2 improvement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842573</commentid>
    <comment_count>1</comment_count>
      <attachid>452261</attachid>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2022-02-16 15:43:49 -0800</bug_when>
    <thetext>Created attachment 452261
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843161</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-02-17 16:02:36 -0800</bug_when>
    <thetext>Committed r290086 (247441@main): &lt;https://commits.webkit.org/247441@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 452261.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843162</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-17 16:03:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/89113963&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452261</attachid>
            <date>2022-02-16 15:43:49 -0800</date>
            <delta_ts>2022-02-17 16:02:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236740-20220217104348.patch</filename>
            <type>text/plain</type>
            <size>18542</size>
            <attacher name="Cameron McCormack (:heycam)">heycam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5Njg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzliYzRlNGNmMzA3ZmVl
YjdkMDkzYmIyNDgwY2Q1YThjZjRkYzA1YS4uOGQ0NTMzY2I1MWI2NmU3ODFjZGNiNjNmNzIzYTI3
ZGQwYmE3NzA1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIyLTAyLTE2ICBDYW1l
cm9uIE1jQ29ybWFjayAgPGhleWNhbUBhcHBsZS5jb20+CisKKyAgICAgICAgQWx3YXlzIHVzZSBD
aGlsZENoYW5nZTo6U291cmNlOjpQYXJzZXIgd2hlbiBjcmVhdGluZyBpbnB1dCBlbGVtZW50IFVB
IHNoYWRvdyB0cmVlIGNvbnRlbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzY3NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBXaGVuIGNyZWF0aW5nIGFuIGlucHV0IGVsZW1lbnQncyBVQSBzaGFkb3cg
dHJlZSwgd2UgY3VycmVudGx5IHVzZSBhCisgICAgICAgIENoaWxkQ2hhbmdlOjpTb3VyY2UgdmFs
dWUgdGhhdCBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIGlucHV0IGVsZW1lbnQKKyAgICAgICAgaXRz
ZWxmIHdhcyBwYXJzZXItIG9yIHNjcmlwdC1pbnNlcnRlZC4gQnV0IHNpbmNlIFVBIHNoYWRvdyB0
cmVlcyBhcmUKKyAgICAgICAgbm90IGV4cG9zZWQgdG8gY29udGVudCwgYW5kIHdlIGRvbid0IGhh
dmUgYW55IGRlcGVuZGVuY3kgb24gdGhlIGV4dHJhCisgICAgICAgIHdvcmsgdGhhdCBpbnNlcnRp
bmcgdXNpbmcgQ2hpbGRDaGFuZ2U6OlNvdXJjZTo6QVBJIGRvZXMsIHdlIGNhbiB1c2UKKyAgICAg
ICAgQ2hpbGRDaGFuZ2U6OlNvdXJjZTo6UGFyc2VyIHVuY29uZGl0aW9uYWxseS4KKworICAgICAg
ICBMb2NhbCB0ZXN0aW5nIHNob3dzIHRoaXMgc2NvcmVzIGEgMC4xJSBTcGVlZG9tZXRlciAyIGlt
cHJvdmVtZW50LgorCisgICAgICAgICogaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6QmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpjcmVhdGVTaGFk
b3dTdWJ0cmVlQW5kVXBkYXRlSW5uZXJUZXh0RWxlbWVudEVkaXRhYmlsaXR5KToKKyAgICAgICAg
KiBodG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvQ29sb3JJ
bnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29sb3JJbnB1dFR5cGU6OmNyZWF0ZVNo
YWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkpOgorICAgICAg
ICAqIGh0bWwvQ29sb3JJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0ZpbGVJbnB1dFR5cGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RmlsZUlucHV0VHlwZTo6YXBwZW5kRm9ybURhdGEgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZUlucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3VidHJl
ZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eSk6CisgICAgICAgICogaHRtbC9G
aWxlSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmNyZWF0ZVNoYWRvd1N1YnRyZWVBbmRV
cGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkpOgorICAgICAgICAqIGh0bWwvSW5wdXRU
eXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3VidHJl
ZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eSk6CisgICAgICAgICogaHRtbC9J
bnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1JhbmdlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJhbmdlSW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVlQW5kVXBkYXRlSW5u
ZXJUZXh0RWxlbWVudEVkaXRhYmlsaXR5KToKKyAgICAgICAgKiBodG1sL1JhbmdlSW5wdXRUeXBl
Lmg6CisgICAgICAgICogaHRtbC9TZWFyY2hJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U2VhcmNoSW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVlQW5kVXBkYXRlSW5uZXJUZXh0
RWxlbWVudEVkaXRhYmlsaXR5KToKKyAgICAgICAgKiBodG1sL1NlYXJjaElucHV0VHlwZS5oOgor
ICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlRleHRGaWVsZElucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4
dEVsZW1lbnRFZGl0YWJpbGl0eSk6CisgICAgICAgICogaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUu
aDoKKwogMjAyMi0wMi0xMyAgQ2FtZXJvbiBNY0Nvcm1hY2sgIDxoZXljYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIENvbnNpc3Rlbmx5IHVzZSBoYXNUYWdOYW1lIGluc3RlYWQgb2YgaXM8PiBpbiBI
VE1MU3RhY2tJdGVtIHRlc3RpbmcgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAKaW5kZXggMTExNzA0ZmE4MTFhMGE1NGZlNjJk
YTZiNDNiM2UzZTdhZTVjMTllOC4uY2JmNjEyMDBlZTY5MTYxY2FmYTU2OTE5ZTdlZjljMWFmZGEz
NWM0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1
dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRU
eXBlLmNwcApAQCAtMzA2LDcgKzMwNiw3IEBAIHZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBl
OjpoYW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50JikKICAgICB9CiB9CiAKLXZvaWQgQmFzZURh
dGVBbmRUaW1lSW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVlQW5kVXBkYXRlSW5uZXJUZXh0
RWxlbWVudEVkaXRhYmlsaXR5KENvbnRhaW5lck5vZGU6OkNoaWxkQ2hhbmdlOjpTb3VyY2Ugc291
cmNlLCBib29sKQordm9pZCBCYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmNyZWF0ZVNoYWRvd1N1
YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkoYm9vbCkKIHsKICAgICBB
U1NFUlQobmVlZHNTaGFkb3dTdWJ0cmVlKCkpOwogICAgIEFTU0VSVChlbGVtZW50KCkpOwpAQCAt
MzE2LDExICszMTYsMTEgQEAgdm9pZCBCYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmNyZWF0ZVNo
YWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGEKIAogICAgIGlmIChkb2N1
bWVudC5zZXR0aW5ncygpLmRhdGVUaW1lSW5wdXRzRWRpdGFibGVDb21wb25lbnRzRW5hYmxlZCgp
KSB7CiAgICAgICAgIG1fZGF0ZVRpbWVFZGl0RWxlbWVudCA9IERhdGVUaW1lRWRpdEVsZW1lbnQ6
OmNyZWF0ZShkb2N1bWVudCwgKnRoaXMpOwotICAgICAgICBlbGVtZW50LnVzZXJBZ2VudFNoYWRv
d1Jvb3QoKS0+YXBwZW5kQ2hpbGQoc291cmNlLCAqbV9kYXRlVGltZUVkaXRFbGVtZW50KTsKKyAg
ICAgICAgZWxlbWVudC51c2VyQWdlbnRTaGFkb3dSb290KCktPmFwcGVuZENoaWxkKENvbnRhaW5l
ck5vZGU6OkNoaWxkQ2hhbmdlOjpTb3VyY2U6OlBhcnNlciwgKm1fZGF0ZVRpbWVFZGl0RWxlbWVu
dCk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgYXV0byB2YWx1ZUNvbnRhaW5lciA9IEhUTUxEaXZF
bGVtZW50OjpjcmVhdGUoZG9jdW1lbnQpOwogICAgICAgICB2YWx1ZUNvbnRhaW5lci0+c2V0UHNl
dWRvKFNoYWRvd1BzZXVkb0lkczo6d2Via2l0RGF0ZUFuZFRpbWVWYWx1ZSgpKTsKLSAgICAgICAg
ZWxlbWVudC51c2VyQWdlbnRTaGFkb3dSb290KCktPmFwcGVuZENoaWxkKHNvdXJjZSwgdmFsdWVD
b250YWluZXIpOworICAgICAgICBlbGVtZW50LnVzZXJBZ2VudFNoYWRvd1Jvb3QoKS0+YXBwZW5k
Q2hpbGQoQ29udGFpbmVyTm9kZTo6Q2hpbGRDaGFuZ2U6OlNvdXJjZTo6UGFyc2VyLCB2YWx1ZUNv
bnRhaW5lcik7CiAgICAgfQogICAgIHVwZGF0ZUlubmVyVGV4dFZhbHVlKCk7CiB9CkBAIC01NzUs
NCArNTc1LDUgQEAgdm9pZCBCYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmNsb3NlRGF0ZVRpbWVD
aG9vc2VyKCkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oCmluZGV4IDZhM2UzYjMw
OWI3MWY1ZGUwZjI4OWNiN2E4YTMwZTA1ZDBhOGVlODAuLjNlYjZkNTVmMWNhMzlmMTE5YmMwNTI3
NWVjYWMxZTBlNWUxYjI2OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURh
dGVBbmRUaW1lSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFu
ZFRpbWVJbnB1dFR5cGUuaApAQCAtMTE0LDcgKzExNCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBp
c01vdXNlRm9jdXNhYmxlKCkgY29uc3QgZmluYWw7CiAKICAgICB2b2lkIGhhbmRsZURPTUFjdGl2
YXRlRXZlbnQoRXZlbnQmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNyZWF0ZVNoYWRvd1N1YnRyZWVB
bmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkoQ29udGFpbmVyTm9kZTo6Q2hpbGRD
aGFuZ2U6OlNvdXJjZSwgYm9vbCkgZmluYWw7CisgICAgdm9pZCBjcmVhdGVTaGFkb3dTdWJ0cmVl
QW5kVXBkYXRlSW5uZXJUZXh0RWxlbWVudEVkaXRhYmlsaXR5KGJvb2wpIGZpbmFsOwogICAgIHZv
aWQgZGVzdHJveVNoYWRvd1N1YnRyZWUoKSBmaW5hbDsKICAgICB2b2lkIHVwZGF0ZUlubmVyVGV4
dFZhbHVlKCkgZmluYWw7CiAgICAgYm9vbCBoYXNDdXN0b21Gb2N1c0xvZ2ljKCkgY29uc3QgZmlu
YWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwCmluZGV4IDI2OTgzZjg1NGM3
NGMyYTczMTk5Njg2ZGFkMmJjODAyOGVjYzUzMGQuLjA3NzMxMjQzMDJlYjc4YTYyYzU3YzU2ZDcw
YjE2ZTIwY2MwMzc4Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1
dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwCkBA
IC0xMzUsNyArMTM1LDcgQEAgQ29sb3IgQ29sb3JJbnB1dFR5cGU6OnZhbHVlQXNDb2xvcigpIGNv
bnN0CiAgICAgcmV0dXJuIHBhcnNlU2ltcGxlQ29sb3JWYWx1ZShlbGVtZW50KCktPnZhbHVlKCkp
LnZhbHVlKCk7CiB9CiAKLXZvaWQgQ29sb3JJbnB1dFR5cGU6OmNyZWF0ZVNoYWRvd1N1YnRyZWVB
bmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkoQ29udGFpbmVyTm9kZTo6Q2hpbGRD
aGFuZ2U6OlNvdXJjZSBzb3VyY2UsIGJvb2wpCit2b2lkIENvbG9ySW5wdXRUeXBlOjpjcmVhdGVT
aGFkb3dTdWJ0cmVlQW5kVXBkYXRlSW5uZXJUZXh0RWxlbWVudEVkaXRhYmlsaXR5KGJvb2wpCiB7
CiAgICAgQVNTRVJUKG5lZWRzU2hhZG93U3VidHJlZSgpKTsKICAgICBBU1NFUlQoZWxlbWVudCgp
KTsKQEAgLTE0Niw4ICsxNDYsOCBAQCB2b2lkIENvbG9ySW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dT
dWJ0cmVlQW5kVXBkYXRlSW5uZXJUZXh0RWxlbWVudEVkaXRhYmlsaXR5KENvbgogICAgIHdyYXBw
ZXJFbGVtZW50LT5zZXRQc2V1ZG8oU2hhZG93UHNldWRvSWRzOjp3ZWJraXRDb2xvclN3YXRjaFdy
YXBwZXIoKSk7CiAgICAgYXV0byBjb2xvclN3YXRjaCA9IEhUTUxEaXZFbGVtZW50OjpjcmVhdGUo
ZG9jdW1lbnQpOwogICAgIGNvbG9yU3dhdGNoLT5zZXRQc2V1ZG8oU2hhZG93UHNldWRvSWRzOjp3
ZWJraXRDb2xvclN3YXRjaCgpKTsKLSAgICB3cmFwcGVyRWxlbWVudC0+YXBwZW5kQ2hpbGQoc291
cmNlLCBjb2xvclN3YXRjaCk7Ci0gICAgZWxlbWVudCgpLT51c2VyQWdlbnRTaGFkb3dSb290KCkt
PmFwcGVuZENoaWxkKHNvdXJjZSwgd3JhcHBlckVsZW1lbnQpOworICAgIHdyYXBwZXJFbGVtZW50
LT5hcHBlbmRDaGlsZChDb250YWluZXJOb2RlOjpDaGlsZENoYW5nZTo6U291cmNlOjpQYXJzZXIs
IGNvbG9yU3dhdGNoKTsKKyAgICBlbGVtZW50KCktPnVzZXJBZ2VudFNoYWRvd1Jvb3QoKS0+YXBw
ZW5kQ2hpbGQoQ29udGFpbmVyTm9kZTo6Q2hpbGRDaGFuZ2U6OlNvdXJjZTo6UGFyc2VyLCB3cmFw
cGVyRWxlbWVudCk7CiAKICAgICB1cGRhdGVDb2xvclN3YXRjaCgpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9Db2xvcklucHV0VHlwZS5oCmluZGV4IDcxNDk3ODNhZmUwMzVmYzIyMDlkY2NiYzY4OWE4Y2M5
NTAyODM2NTYuLjliNTcwZDA4ODAyMmQ1NGQ3OWZlZjQ1YjgwMGQ2MDUyNGY5NDkzMTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBlLmgKQEAgLTYyLDcgKzYyLDcgQEAgcHJpdmF0ZToK
ICAgICBib29sIHN1cHBvcnRzUmVxdWlyZWQoKSBjb25zdCBmaW5hbDsKICAgICBTdHJpbmcgZmFs
bGJhY2tWYWx1ZSgpIGNvbnN0IGZpbmFsOwogICAgIFN0cmluZyBzYW5pdGl6ZVZhbHVlKGNvbnN0
IFN0cmluZyYpIGNvbnN0IGZpbmFsOwotICAgIHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZUFuZFVw
ZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eShDb250YWluZXJOb2RlOjpDaGlsZENoYW5n
ZTo6U291cmNlLCBib29sKSBmaW5hbDsKKyAgICB2b2lkIGNyZWF0ZVNoYWRvd1N1YnRyZWVBbmRV
cGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkoYm9vbCkgZmluYWw7CiAgICAgdm9pZCBz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRC
ZWhhdmlvcikgZmluYWw7CiAgICAgdm9pZCBhdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmll
ZE5hbWUmKSBmaW5hbDsKICAgICB2b2lkIGhhbmRsZURPTUFjdGl2YXRlRXZlbnQoRXZlbnQmKSBm
aW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCmluZGV4IGEyMzc3YmMxZjJi
NDZhYTRmNDg4MTZmYzM3MDYxZTA5YTQ5Yzk3NjIuLjUzZTVjYTM4M2NmZTM3NzRiMTVmODUwMDQ0
N2ZhYWMzMDgxMDI5MGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0
VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcApAQCAt
MTc1LDcgKzE3NSw2IEBAIGJvb2wgRmlsZUlucHV0VHlwZTo6YXBwZW5kRm9ybURhdGEoRE9NRm9y
bURhdGEmIGZvcm1EYXRhKSBjb25zdAogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKLQog
ICAgIGZvciAoYXV0byYgZmlsZSA6IGZpbGVMaXN0LT5maWxlcygpKQogICAgICAgICBmb3JtRGF0
YS5hcHBlbmQobmFtZSwgZmlsZS5nZXQoKSk7CiAgICAgcmV0dXJuIHRydWU7CkBAIC0yNjMsMTIg
KzI2MiwxMiBAQCB2b2lkIEZpbGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJv
b2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCiAgICAgZWxlbWVudCgpLT5pbnZhbGlkYXRlU3R5
bGVGb3JTdWJ0cmVlKCk7CiB9CiAKLXZvaWQgRmlsZUlucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3Vi
dHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eShDb250YWluZXJOb2RlOjpD
aGlsZENoYW5nZTo6U291cmNlIHNvdXJjZSwgYm9vbCkKK3ZvaWQgRmlsZUlucHV0VHlwZTo6Y3Jl
YXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eShib29s
KQogewogICAgIEFTU0VSVChuZWVkc1NoYWRvd1N1YnRyZWUoKSk7CiAgICAgQVNTRVJUKGVsZW1l
bnQoKSk7CiAgICAgQVNTRVJUKGVsZW1lbnQoKS0+c2hhZG93Um9vdCgpKTsKLSAgICBlbGVtZW50
KCktPnVzZXJBZ2VudFNoYWRvd1Jvb3QoKS0+YXBwZW5kQ2hpbGQoc291cmNlLCBlbGVtZW50KCkt
Pm11bHRpcGxlKCkgPyBVcGxvYWRCdXR0b25FbGVtZW50OjpjcmVhdGVGb3JNdWx0aXBsZShlbGVt
ZW50KCktPmRvY3VtZW50KCkpOiBVcGxvYWRCdXR0b25FbGVtZW50OjpjcmVhdGUoZWxlbWVudCgp
LT5kb2N1bWVudCgpKSk7CisgICAgZWxlbWVudCgpLT51c2VyQWdlbnRTaGFkb3dSb290KCktPmFw
cGVuZENoaWxkKENvbnRhaW5lck5vZGU6OkNoaWxkQ2hhbmdlOjpTb3VyY2U6OlBhcnNlciwgZWxl
bWVudCgpLT5tdWx0aXBsZSgpID8gVXBsb2FkQnV0dG9uRWxlbWVudDo6Y3JlYXRlRm9yTXVsdGlw
bGUoZWxlbWVudCgpLT5kb2N1bWVudCgpKTogVXBsb2FkQnV0dG9uRWxlbWVudDo6Y3JlYXRlKGVs
ZW1lbnQoKS0+ZG9jdW1lbnQoKSkpOwogfQogCiB2b2lkIEZpbGVJbnB1dFR5cGU6OmRpc2FibGVk
U3RhdGVDaGFuZ2VkKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0
VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKaW5kZXggMmVmMDI0
NGRkODkyNzNhMTEzNTI5NWQxNmRiNzkxNmM4MmMwNmJkMy4uN2IyYzA5NjYxZDU1YTM1NDI5NDQ1
NmIxY2JlNjRkODQwZGI1NzFmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxl
SW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKQEAg
LTc3LDcgKzc3LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAgICAgSWNvbiogaWNvbigpIGNvbnN0
IGZpbmFsOwotICAgIHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVs
ZW1lbnRFZGl0YWJpbGl0eShDb250YWluZXJOb2RlOjpDaGlsZENoYW5nZTo6U291cmNlLCBib29s
KSBmaW5hbDsKKyAgICB2b2lkIGNyZWF0ZVNoYWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRF
bGVtZW50RWRpdGFiaWxpdHkoYm9vbCkgZmluYWw7CiAgICAgdm9pZCBkaXNhYmxlZFN0YXRlQ2hh
bmdlZCgpIGZpbmFsOwogICAgIHZvaWQgYXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZpZWRO
YW1lJikgZmluYWw7CiAgICAgU3RyaW5nIGRlZmF1bHRUb29sVGlwKCkgY29uc3QgZmluYWw7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcAppbmRleCBiYTc1YjA5Y2Q3MGJl
YTRkZmMwMTY2MWIyNDE5OGY2N2VlNWViMGQ4Li42MmI2YTc2ODEyMDNmOWQ2MWU0MWQzNTgzNmVh
MzBiNGY4YzQyMGJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVs
ZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAK
QEAgLTE2Nyw3ICsxNjcsNyBAQCBIVE1MSW1hZ2VMb2FkZXImIEhUTUxJbnB1dEVsZW1lbnQ6OmVu
c3VyZUltYWdlTG9hZGVyKCkKIHZvaWQgSFRNTElucHV0RWxlbWVudDo6Y3JlYXRlU2hhZG93U3Vi
dHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eSgpCiB7CiAgICAgUmVmPElu
cHV0VHlwZT4gcHJvdGVjdGVkSW5wdXRUeXBlKCptX2lucHV0VHlwZSk7Ci0gICAgcHJvdGVjdGVk
SW5wdXRUeXBlLT5jcmVhdGVTaGFkb3dTdWJ0cmVlQW5kVXBkYXRlSW5uZXJUZXh0RWxlbWVudEVk
aXRhYmlsaXR5KG1fcGFyc2luZ0luUHJvZ3Jlc3MgPyBDaGlsZENoYW5nZTo6U291cmNlOjpQYXJz
ZXIgOiBDaGlsZENoYW5nZTo6U291cmNlOjpBUEksIGlzSW5uZXJUZXh0RWxlbWVudEVkaXRhYmxl
KCkpOworICAgIHByb3RlY3RlZElucHV0VHlwZS0+Y3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0
ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eShpc0lubmVyVGV4dEVsZW1lbnRFZGl0YWJsZSgp
KTsKIH0KIAogSFRNTElucHV0RWxlbWVudDo6fkhUTUxJbnB1dEVsZW1lbnQoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9JbnB1dFR5cGUuY3BwCmluZGV4IGIwNTM2NzNhNzQ3ZTJjNWJmYmVhOGQwMmJiOTFjZjk1MTBm
NDc3ZjguLjdhMDUwNTAyYjNlYWJlZDVjZDE3MWZlZjhmM2Y2YjUxOTZlYTMzMmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0lucHV0VHlwZS5jcHAKQEAgLTU2MSw3ICs1NjEsNyBAQCB2b2lkIElucHV0VHlwZTo6
Ymx1cigpCiAgICAgZWxlbWVudCgpLT5kZWZhdWx0Qmx1cigpOwogfQogCi12b2lkIElucHV0VHlw
ZTo6Y3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0
eShDb250YWluZXJOb2RlOjpDaGlsZENoYW5nZTo6U291cmNlLCBib29sKQordm9pZCBJbnB1dFR5
cGU6OmNyZWF0ZVNoYWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxp
dHkoYm9vbCkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5
cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmgKaW5kZXggMTU3OWNhMzJjNzli
NjdlMDM5MTg5MDkzYjZkZDM3NTRhOTlmM2I0ZC4uMDQ1ZmY0NTdmYjMyZWU2YWI5MTA1YjUzYWEy
MGQ2NzhjODkzMWNlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5oCkBAIC0zMDYsNyArMzA2LDcg
QEAgcHVibGljOgogCiAgICAgLy8gU2hhZG93IHRyZWUgaGFuZGxpbmcuCiAKLSAgICB2aXJ0dWFs
IHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJp
bGl0eShDb250YWluZXJOb2RlOjpDaGlsZENoYW5nZTo6U291cmNlLCBib29sKTsKKyAgICB2aXJ0
dWFsIHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0
YWJpbGl0eShib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgZGVzdHJveVNoYWRvd1N1YnRyZWUoKTsK
IAogICAgIHZpcnR1YWwgSFRNTEVsZW1lbnQqIGNvbnRhaW5lckVsZW1lbnQoKSBjb25zdCB7IHJl
dHVybiBudWxscHRyOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5w
dXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUuY3BwCmluZGV4
IGI0YWJmMjlmNzJiNmY1ZGExMGZmNzgwMDFjM2JkOWEyNTc3OWYyYzQuLjgwOWQ1ODljZjNkODcx
MmViYzcxYzMxMzBjNDQzMmRkZTgxNWU5OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvUmFuZ2VJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1
dFR5cGUuY3BwCkBAIC0yNDEsNyArMjQxLDcgQEAgYXV0byBSYW5nZUlucHV0VHlwZTo6aGFuZGxl
S2V5ZG93bkV2ZW50KEtleWJvYXJkRXZlbnQmIGV2ZW50KSAtPiBTaG91bGRDYWxsQmFzZUUKICAg
ICByZXR1cm4gU2hvdWxkQ2FsbEJhc2VFdmVudEhhbmRsZXI6OlllczsKIH0KIAotdm9pZCBSYW5n
ZUlucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRF
ZGl0YWJpbGl0eShDb250YWluZXJOb2RlOjpDaGlsZENoYW5nZTo6U291cmNlIHNvdXJjZSwgYm9v
bCkKK3ZvaWQgUmFuZ2VJbnB1dFR5cGU6OmNyZWF0ZVNoYWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5l
clRleHRFbGVtZW50RWRpdGFiaWxpdHkoYm9vbCkKIHsKICAgICBBU1NFUlQobmVlZHNTaGFkb3dT
dWJ0cmVlKCkpOwogICAgIEFTU0VSVChlbGVtZW50KCkpOwpAQCAtMjUwLDEwICsyNTAsMTAgQEAg
dm9pZCBSYW5nZUlucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4
dEVsZW1lbnRFZGl0YWJpbGl0eShDb24KICAgICBEb2N1bWVudCYgZG9jdW1lbnQgPSBlbGVtZW50
KCktPmRvY3VtZW50KCk7CiAgICAgYXV0byB0cmFjayA9IEhUTUxEaXZFbGVtZW50OjpjcmVhdGUo
ZG9jdW1lbnQpOwogICAgIHRyYWNrLT5zZXRQc2V1ZG8oU2hhZG93UHNldWRvSWRzOjp3ZWJraXRT
bGlkZXJSdW5uYWJsZVRyYWNrKCkpOwotICAgIHRyYWNrLT5hcHBlbmRDaGlsZChzb3VyY2UsIFNs
aWRlclRodW1iRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KSk7CisgICAgdHJhY2stPmFwcGVuZENo
aWxkKENvbnRhaW5lck5vZGU6OkNoaWxkQ2hhbmdlOjpTb3VyY2U6OlBhcnNlciwgU2xpZGVyVGh1
bWJFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQpKTsKICAgICBhdXRvIGNvbnRhaW5lciA9IFNsaWRl
ckNvbnRhaW5lckVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCk7Ci0gICAgY29udGFpbmVyLT5hcHBl
bmRDaGlsZChzb3VyY2UsIHRyYWNrKTsKLSAgICBlbGVtZW50KCktPnVzZXJBZ2VudFNoYWRvd1Jv
b3QoKS0+YXBwZW5kQ2hpbGQoc291cmNlLCBjb250YWluZXIpOworICAgIGNvbnRhaW5lci0+YXBw
ZW5kQ2hpbGQoQ29udGFpbmVyTm9kZTo6Q2hpbGRDaGFuZ2U6OlNvdXJjZTo6UGFyc2VyLCB0cmFj
ayk7CisgICAgZWxlbWVudCgpLT51c2VyQWdlbnRTaGFkb3dSb290KCktPmFwcGVuZENoaWxkKENv
bnRhaW5lck5vZGU6OkNoaWxkQ2hhbmdlOjpTb3VyY2U6OlBhcnNlciwgY29udGFpbmVyKTsKIH0K
IAogSFRNTEVsZW1lbnQqIFJhbmdlSW5wdXRUeXBlOjpzbGlkZXJUcmFja0VsZW1lbnQoKSBjb25z
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5oCmluZGV4IDczZWQ5NGNmZTEzMTBhZmIy
OTFiMGYxZWQ2NTc5YjM0ZTY0MDM1ZGYuLjI5NjRjNjRlOWQzZGY0MGZlOTViYjU3MmI5MTc2M2Q0
M2ZlYzdjYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmgKQEAgLTUyLDcgKzUy
LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGhhbmRsZU1vdXNlRG93bkV2ZW50KE1vdXNlRXZlbnQm
KSBmaW5hbDsKICAgICBTaG91bGRDYWxsQmFzZUV2ZW50SGFuZGxlciBoYW5kbGVLZXlkb3duRXZl
bnQoS2V5Ym9hcmRFdmVudCYpIGZpbmFsOwogICAgIFJlbmRlclB0cjxSZW5kZXJFbGVtZW50PiBj
cmVhdGVJbnB1dFJlbmRlcmVyKFJlbmRlclN0eWxlJiYpIGZpbmFsOwotICAgIHZvaWQgY3JlYXRl
U2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eShDb250YWlu
ZXJOb2RlOjpDaGlsZENoYW5nZTo6U291cmNlLCBib29sKSBmaW5hbDsKKyAgICB2b2lkIGNyZWF0
ZVNoYWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkoYm9vbCkg
ZmluYWw7CiAgICAgRGVjaW1hbCBwYXJzZVRvTnVtYmVyKGNvbnN0IFN0cmluZyYsIGNvbnN0IERl
Y2ltYWwmKSBjb25zdCBmaW5hbDsKICAgICBTdHJpbmcgc2VyaWFsaXplKGNvbnN0IERlY2ltYWwm
KSBjb25zdCBmaW5hbDsKICAgICBib29sIGFjY2Vzc0tleUFjdGlvbihib29sIHNlbmRNb3VzZUV2
ZW50cykgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1NlYXJjaElucHV0
VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1NlYXJjaElucHV0VHlwZS5jcHAKaW5kZXgg
ODQ1ZDE0ZjdmZGJiZjU5YTdjZDU1ZTY4Y2QyMGRhNjRiZWRjYTAyMy4uZjcwYjEyZTI0MzdmZmMx
YTg2NDVlYTAzOThhZDk0MGQ1MjUwMjY1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9TZWFyY2hJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvU2VhcmNoSW5w
dXRUeXBlLmNwcApAQCAtMTAyLDEzICsxMDIsMTMgQEAgYm9vbCBTZWFyY2hJbnB1dFR5cGU6Om5l
ZWRzQ29udGFpbmVyKCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBTZWFyY2hJ
bnB1dFR5cGU6OmNyZWF0ZVNoYWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRp
dGFiaWxpdHkoQ29udGFpbmVyTm9kZTo6Q2hpbGRDaGFuZ2U6OlNvdXJjZSBzb3VyY2UsIGJvb2wg
aXNJbm5lclRleHRFbGVtZW50RWRpdGFibGUpCit2b2lkIFNlYXJjaElucHV0VHlwZTo6Y3JlYXRl
U2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eShib29sIGlz
SW5uZXJUZXh0RWxlbWVudEVkaXRhYmxlKQogewogICAgIEFTU0VSVChuZWVkc1NoYWRvd1N1YnRy
ZWUoKSk7CiAgICAgQVNTRVJUKCFtX3Jlc3VsdHNCdXR0b24pOwogICAgIEFTU0VSVCghbV9jYW5j
ZWxCdXR0b24pOwogCi0gICAgVGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVl
QW5kVXBkYXRlSW5uZXJUZXh0RWxlbWVudEVkaXRhYmlsaXR5KHNvdXJjZSwgaXNJbm5lclRleHRF
bGVtZW50RWRpdGFibGUpOworICAgIFRleHRGaWVsZElucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3Vi
dHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eShpc0lubmVyVGV4dEVsZW1l
bnRFZGl0YWJsZSk7CiAgICAgUmVmUHRyPEhUTUxFbGVtZW50PiBjb250YWluZXIgPSBjb250YWlu
ZXJFbGVtZW50KCk7CiAgICAgUmVmUHRyPEhUTUxFbGVtZW50PiB0ZXh0V3JhcHBlciA9IGlubmVy
QmxvY2tFbGVtZW50KCk7CiAgICAgQVNTRVJUKGNvbnRhaW5lcik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL1NlYXJjaElucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9T
ZWFyY2hJbnB1dFR5cGUuaAppbmRleCAzMzE4MzNkZDZkODcyZGQwNzBmNTdlODQ3ZTFjYTA0ZTMx
MjQ4MmVhLi4yMmY2OGM5MjVkODY3OTY0MTMwZThlZjMxNzk3YmM5MGVkYjhlZjYxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1NlYXJjaElucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvU2VhcmNoSW5wdXRUeXBlLmgKQEAgLTUxLDcgKzUxLDcgQEAgcHJpdmF0ZToK
ICAgICBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRlSW5wdXRSZW5kZXJlcihSZW5kZXJT
dHlsZSYmKSBmaW5hbDsKICAgICBjb25zdCBBdG9tU3RyaW5nJiBmb3JtQ29udHJvbFR5cGUoKSBj
b25zdCBmaW5hbDsKICAgICBib29sIG5lZWRzQ29udGFpbmVyKCkgY29uc3QgZmluYWw7Ci0gICAg
dm9pZCBjcmVhdGVTaGFkb3dTdWJ0cmVlQW5kVXBkYXRlSW5uZXJUZXh0RWxlbWVudEVkaXRhYmls
aXR5KENvbnRhaW5lck5vZGU6OkNoaWxkQ2hhbmdlOjpTb3VyY2UsIGJvb2wpIGZpbmFsOworICAg
IHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlubmVyVGV4dEVsZW1lbnRFZGl0YWJp
bGl0eShib29sKSBmaW5hbDsKICAgICB2b2lkIGRlc3Ryb3lTaGFkb3dTdWJ0cmVlKCkgZmluYWw7
CiAgICAgSFRNTEVsZW1lbnQqIHJlc3VsdHNCdXR0b25FbGVtZW50KCkgY29uc3QgZmluYWw7CiAg
ICAgSFRNTEVsZW1lbnQqIGNhbmNlbEJ1dHRvbkVsZW1lbnQoKSBjb25zdCBmaW5hbDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcAppbmRleCA1Zjc0ZGVhYjcxZDFj
N2U0ZTVjZmU0MWQxNmQwNThmNGIwMWJmNWQxLi41ZTg3NzhiYmQ5MDA5YTVkYWI3ODFlMmRmZTM3
ODhlOTA5N2ZhYzhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElu
cHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUu
Y3BwCkBAIC0zMTYsNyArMzE2LDcgQEAgYm9vbCBUZXh0RmllbGRJbnB1dFR5cGU6OnNob3VsZEhh
dmVDYXBzTG9ja0luZGljYXRvcigpIGNvbnN0CiAgICAgcmV0dXJuIFJlbmRlclRoZW1lOjpzaW5n
bGV0b24oKS5zaG91bGRIYXZlQ2Fwc0xvY2tJbmRpY2F0b3IoKmVsZW1lbnQoKSk7CiB9CiAKLXZv
aWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVlQW5kVXBkYXRlSW5uZXJU
ZXh0RWxlbWVudEVkaXRhYmlsaXR5KENvbnRhaW5lck5vZGU6OkNoaWxkQ2hhbmdlOjpTb3VyY2Ug
c291cmNlLCBib29sIGlzSW5uZXJUZXh0RWxlbWVudEVkaXRhYmxlKQordm9pZCBUZXh0RmllbGRJ
bnB1dFR5cGU6OmNyZWF0ZVNoYWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRp
dGFiaWxpdHkoYm9vbCBpc0lubmVyVGV4dEVsZW1lbnRFZGl0YWJsZSkKIHsKICAgICBBU1NFUlQo
bmVlZHNTaGFkb3dTdWJ0cmVlKCkpOwogICAgIEFTU0VSVChlbGVtZW50KCkpOwpAQCAtMzM2LDcg
KzMzNiw3IEBAIHZvaWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVlQW5k
VXBkYXRlSW5uZXJUZXh0RWxlbWVudEVkaXRhYmlsaXR5CiAgICAgbV9pbm5lclRleHQgPSBUZXh0
Q29udHJvbElubmVyVGV4dEVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCwgaXNJbm5lclRleHRFbGVt
ZW50RWRpdGFibGUpOwogCiAgICAgaWYgKCFjcmVhdGVzQ29udGFpbmVyKSB7Ci0gICAgICAgIGVs
ZW1lbnQoKS0+dXNlckFnZW50U2hhZG93Um9vdCgpLT5hcHBlbmRDaGlsZChzb3VyY2UsICptX2lu
bmVyVGV4dCk7CisgICAgICAgIGVsZW1lbnQoKS0+dXNlckFnZW50U2hhZG93Um9vdCgpLT5hcHBl
bmRDaGlsZChDb250YWluZXJOb2RlOjpDaGlsZENoYW5nZTo6U291cmNlOjpQYXJzZXIsICptX2lu
bmVyVGV4dCk7CiAgICAgICAgIHVwZGF0ZVBsYWNlaG9sZGVyVGV4dCgpOwogICAgICAgICByZXR1
cm47CiAgICAgfQpAQCAtMzQ2LDcgKzM0Niw3IEBAIHZvaWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpj
cmVhdGVTaGFkb3dTdWJ0cmVlQW5kVXBkYXRlSW5uZXJUZXh0RWxlbWVudEVkaXRhYmlsaXR5CiAK
ICAgICBpZiAoc2hvdWxkSGF2ZVNwaW5CdXR0b24pIHsKICAgICAgICAgbV9pbm5lclNwaW5CdXR0
b24gPSBTcGluQnV0dG9uRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCAqdGhpcyk7Ci0gICAgICAg
IG1fY29udGFpbmVyLT5hcHBlbmRDaGlsZChzb3VyY2UsICptX2lubmVyU3BpbkJ1dHRvbik7Cisg
ICAgICAgIG1fY29udGFpbmVyLT5hcHBlbmRDaGlsZChDb250YWluZXJOb2RlOjpDaGlsZENoYW5n
ZTo6U291cmNlOjpQYXJzZXIsICptX2lubmVyU3BpbkJ1dHRvbik7CiAgICAgfQogCiAgICAgaWYg
KHNob3VsZEhhdmVDYXBzTG9ja0luZGljYXRvcikgewpAQCAtMzU2LDcgKzM1Niw3IEBAIHZvaWQg
VGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVlQW5kVXBkYXRlSW5uZXJUZXh0
RWxlbWVudEVkaXRhYmlsaXR5CiAgICAgICAgIGJvb2wgc2hvdWxkRHJhd0NhcHNMb2NrSW5kaWNh
dG9yID0gdGhpcy0+c2hvdWxkRHJhd0NhcHNMb2NrSW5kaWNhdG9yKCk7CiAgICAgICAgIG1fY2Fw
c0xvY2tJbmRpY2F0b3ItPnNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlEaXNwbGF5
LCBzaG91bGREcmF3Q2Fwc0xvY2tJbmRpY2F0b3IgPyBDU1NWYWx1ZUJsb2NrIDogQ1NTVmFsdWVO
b25lLCB0cnVlKTsKIAotICAgICAgICBtX2NvbnRhaW5lci0+YXBwZW5kQ2hpbGQoc291cmNlLCAq
bV9jYXBzTG9ja0luZGljYXRvcik7CisgICAgICAgIG1fY29udGFpbmVyLT5hcHBlbmRDaGlsZChD
b250YWluZXJOb2RlOjpDaGlsZENoYW5nZTo6U291cmNlOjpQYXJzZXIsICptX2NhcHNMb2NrSW5k
aWNhdG9yKTsKICAgICB9CiAgICAgdXBkYXRlQXV0b0ZpbGxCdXR0b24oKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5oCmluZGV4IGI1MWE5N2YwYmQwMzkxNDAxYWE5
ZmIwNWRjYzlhN2ZlMTgwMDVlYWEuLjVhMjQzMjc2NWYxY2Q2OGE0NjFhODg1MzUzMjU4Mjg1ZmU0
OTlmNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuaApAQCAtNzAs
NyArNzAsNyBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYKIAogICAgIHZpcnR1YWwgYm9vbCBuZWVkc0Nv
bnRhaW5lcigpIGNvbnN0OwotICAgIHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlu
bmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eShDb250YWluZXJOb2RlOjpDaGlsZENoYW5nZTo6U291
cmNlLCBib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIGNyZWF0ZVNoYWRvd1N1YnRyZWVBbmRVcGRh
dGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkoYm9vbCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBk
ZXN0cm95U2hhZG93U3VidHJlZSgpIG92ZXJyaWRlOwogICAgIHZvaWQgYXR0cmlidXRlQ2hhbmdl
ZChjb25zdCBRdWFsaWZpZWROYW1lJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaXNhYmxlZFN0YXRl
Q2hhbmdlZCgpIGZpbmFsOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>