<?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>213658</bug_id>
          
          <creation_ts>2020-06-26 13:32:26 -0700</creation_ts>
          <short_desc>Video spills over PiP screen a little when using Picture in Picture</short_desc>
          <delta_ts>2020-06-29 16:32:51 -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>Media</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="Peng Liu">peng.liu6</reporter>
          <assigned_to name="Peng Liu">peng.liu6</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1666579</commentid>
    <comment_count>0</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-06-26 13:32:26 -0700</bug_when>
    <thetext>Video spills over PiP screen a little when using Picture in Picture</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1666580</commentid>
    <comment_count>1</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-06-26 13:32:58 -0700</bug_when>
    <thetext>&lt;rdar://problem/64747869&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1666694</commentid>
    <comment_count>2</comment_count>
      <attachid>402932</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-06-26 17:02:27 -0700</bug_when>
    <thetext>Created attachment 402932
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1666953</commentid>
    <comment_count>3</comment_count>
      <attachid>402932</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-06-28 17:37:47 -0700</bug_when>
    <thetext>Comment on attachment 402932
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=402932&amp;action=review

&gt; Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm:986
&gt; +    FloatSize videoDimensions = FloatSize(videoElement.videoWidth(), videoElement.videoHeight());
&gt; +
&gt; +    dispatch_async(dispatch_get_main_queue(), [protectedThis = makeRefPtr(this), this, videoElementClientRect, videoDimensions, viewRef, mode, allowsPictureInPicture] {

Can you use something like this instead - FloatSize videoDimensions = { videoElement.videoWidth(), videoElement.videoHeight() }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667180</commentid>
    <comment_count>4</comment_count>
      <attachid>402932</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-06-29 10:41:59 -0700</bug_when>
    <thetext>Comment on attachment 402932
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=402932&amp;action=review

&gt;&gt; Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm:986
&gt;&gt; +    dispatch_async(dispatch_get_main_queue(), [protectedThis = makeRefPtr(this), this, videoElementClientRect, videoDimensions, viewRef, mode, allowsPictureInPicture] {
&gt; 
&gt; Can you use something like this instead - FloatSize videoDimensions = { videoElement.videoWidth(), videoElement.videoHeight() }

Good idea! I change it to:
FloatSize videoDimensions = { (float)videoElement.videoWidth(), (float)videoElement.videoHeight() };</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667182</commentid>
    <comment_count>5</comment_count>
      <attachid>403081</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-06-29 10:47:51 -0700</bug_when>
    <thetext>Created attachment 403081
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667342</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-06-29 16:32:46 -0700</bug_when>
    <thetext>Committed r263707: &lt;https://trac.webkit.org/changeset/263707&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403081.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>402932</attachid>
            <date>2020-06-26 17:02:27 -0700</date>
            <delta_ts>2020-06-28 17:37:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-213658-20200626170226.patch</filename>
            <type>text/plain</type>
            <size>18930</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNDkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzA3NjgzZjIyNmVjYzY2
YWJkNjZmZTkzNTE2MGU0MWVlM2NjOTljOC4uNTg2NjdjMDgzMzRlY2JhNzI4Mjg0Nzg2MWU0Y2E0
ZWUzOGJmY2M3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIwLTA2LTI2ICBQZW5n
IExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgVmlkZW8gc3BpbGxzIG92ZXIg
UGlQIHNjcmVlbiBhIGxpdHRsZSB3aGVuIHVzaW5nIFBpY3R1cmUgaW4gUGljdHVyZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjU4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2UgbmVlZCB0byBwcm92
aWRlIHZpZGVvIGNvbnRlbnQgZGltZW5zaW9ucyBpbnN0ZWFkIG9mIHZpZGVvIGVsZW1lbnQgc2l6
ZXMgdG8KKyAgICAgICAgQVZQbGF5ZXJDb250cm9sbGVyIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBQ
aWN0dXJlLWluLVBpY3R1cmUgd2luZG93IHdpbGwgaGF2ZQorICAgICAgICB0aGUgY29ycmVjdCBh
c3BlY3QgcmF0aW8uCisKKyAgICAgICAgVGVzdDogbWVkaWEvcGljdHVyZS1pbi1waWN0dXJlL3Bp
Y3R1cmUtaW4tcGljdHVyZS13aW5kb3ctYXNwZWN0LXJhdGlvLmh0bWwKKworICAgICAgICAqIHBs
YXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oOgorICAgICAgICAqIHBs
YXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjpzZXR1cEZ1bGxzY3JlZW4pOgorICAgICAgICAq
IHBsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW06CisgICAg
ICAgIChWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6c2V0VXBGdWxsc2NyZWVuKToK
KwogMjAyMC0wNi0yNCAgQ2xhcmsgV2FuZyAgPGNsYXJrX3dhbmdAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlbW92ZWQgdW5yZXN0cmljdGVkIGtleXdvcmQgZnJvbSBhdHRyaWJ1dGVzIGluIFBhbm5l
ck5vZGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggMGE4NjBmMzI4Zjc1MWUyYjgyYzUxOTU2YWE1NjVlZGZjNjlkZjNj
My4uODNiNzc0NGUyZTYwMTM4M2FkNTlmZGJlZGIzZTFhMzQ3YzU1NjJiZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMSBAQAorMjAyMC0wNi0yNiAgUGVuZyBMaXUgIDxwZW5nLmxpdTZAYXBwbGUuY29t
PgorCisgICAgICAgIFZpZGVvIHNwaWxscyBvdmVyIFBpUCBzY3JlZW4gYSBsaXR0bGUgd2hlbiB1
c2luZyBQaWN0dXJlIGluIFBpY3R1cmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxMzY1OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZCB0aGUgdmlkZW8gY29udGVudCBkaW1lbnNpb25zIHRvIHRoZSBJ
UEMgbWVzc2FnZSBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OlNldHVwRnVsbHNjcmVlbldp
dGhJRC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
UHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5Lm1lc3NhZ2VzLmluOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyUHJveHkubW06CisgICAgICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1h
bmFnZXJQcm94eTo6c2V0dXBGdWxsc2NyZWVuV2l0aElEKToKKyAgICAgICAgKFdlYktpdDo6Vmlk
ZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpzZXRWaWRlb0RpbWVuc2lvbnMpOgorICAgICAgICAo
V2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmVudGVyRnVsbHNjcmVlbik6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tOgorICAg
ICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVl
bkZvclZpZGVvRWxlbWVudCk6CisKIDIwMjAtMDYtMjQgIERhdmlkIEtpbHplciAgPGRka2lsemVy
QGFwcGxlLmNvbT4KIAogICAgICAgICBbSVBDXSBVc2UgV2ViS2l0OjpMYXllckhvc3RpbmdDb250
ZXh0SUQgaW5zdGVhZCBvZiB1aW50MzJfdCBmb3IgdmlkZW9MYXllcklECmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VB
VktpdC5oCmluZGV4IDQzOTBjZDZhMTE4Mjk4ZWQxYzZjYzI5YWNkODA3NGMyZGIxZTc2ODQuLjM1
N2Q5YWU0YWQyY2M4NDJmZTc4OGVhMTJkOGY4ZDVkZTNhMjU1NzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VB
VktpdC5oCkBAIC03OSw3ICs3OSw3IEBAIHB1YmxpYzoKICAgICAvLyBQbGF5YmFja1Nlc3Npb25N
b2RlbENsaWVudAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZXh0ZXJuYWxQbGF5YmFja0NoYW5n
ZWQoYm9vbCBlbmFibGVkLCBQbGF5YmFja1Nlc3Npb25Nb2RlbDo6RXh0ZXJuYWxQbGF5YmFja1Rh
cmdldFR5cGUsIGNvbnN0IFN0cmluZyYgbG9jYWxpemVkRGV2aWNlTmFtZSkgZmluYWw7CiAKLSAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldHVwRnVsbHNjcmVlbihVSVZpZXcmLCBjb25zdCBJbnRS
ZWN0JiBpbml0aWFsUmVjdCwgVUlWaWV3ICosIEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9G
dWxsc2NyZWVuTW9kZSwgYm9vbCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlUGxheWJhY2ssIGJvb2wg
c3RhbmRieSk7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXR1cEZ1bGxzY3JlZW4oVUlWaWV3
JiB2aWRlb1ZpZXcsIGNvbnN0IEludFJlY3QmIGluaXRpYWxSZWN0LCBjb25zdCBGbG9hdFNpemUm
IHZpZGVvRGltZW5zaW9ucywgVUlWaWV3KiBwYXJlbnRWaWV3LCBIVE1MTWVkaWFFbGVtZW50RW51
bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUsIGJvb2wgYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXli
YWNrLCBib29sIHN0YW5kYnkpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZW50ZXJGdWxsc2Ny
ZWVuKCk7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBleGl0RnVsbHNjcmVlbihjb25zdCBJbnRS
ZWN0JiBmaW5hbFJlY3QpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2xlYW51cEZ1bGxzY3Jl
ZW4oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxz
Y3JlZW5JbnRlcmZhY2VBVktpdC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQppbmRleCBiNTM3MjhiNmE0ZDZlOGVhZjNlZDVl
YTZkMTFmMzY5MmJlZWI3MGVkLi40ZTEwOGUzOGNmMjdkYjc5NGRiMTYzZDBmMWUzNzRiZTlmNTZh
OTg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2Ny
ZWVuSW50ZXJmYWNlQVZLaXQubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1Zp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCkBAIC04ODksMTQgKzg4OSwxNCBAQCB2b2lk
IFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjphcHBsaWNhdGlvbkRpZEJlY29tZUFjdGl2
ZSgpCiAgICAgTE9HKEZ1bGxzY3JlZW4sICJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6
YXBwbGljYXRpb25EaWRCZWNvbWVBY3RpdmUoJXApIiwgdGhpcyk7CiB9CiAKLXZvaWQgVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OnNldHVwRnVsbHNjcmVlbihVSVZpZXcmIHZpZGVvVmll
dywgY29uc3QgSW50UmVjdCYgaW5pdGlhbFJlY3QsIFVJVmlldyogcGFyZW50VmlldywgSFRNTE1l
ZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUsIGJvb2wgYWxsb3dzUGlj
dHVyZUluUGljdHVyZVBsYXliYWNrLCBib29sIHN0YW5kYnkpCit2b2lkIFZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZUFWS2l0OjpzZXR1cEZ1bGxzY3JlZW4oVUlWaWV3JiB2aWRlb1ZpZXcsIGNvbnN0
IEludFJlY3QmIGluaXRpYWxSZWN0LCBjb25zdCBGbG9hdFNpemUmIHZpZGVvRGltZW5zaW9ucywg
VUlWaWV3KiBwYXJlbnRWaWV3LCBIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVl
bk1vZGUgbW9kZSwgYm9vbCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlUGxheWJhY2ssIGJvb2wgc3Rh
bmRieSkKIHsKICAgICBBU1NFUlQoc3RhbmRieSB8fCBtb2RlICE9IEhUTUxNZWRpYUVsZW1lbnRF
bnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZU5vbmUpOwogICAgIExPRyhGdWxsc2NyZWVuLCAiVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OnNldHVwRnVsbHNjcmVlbiglcCkiLCB0aGlzKTsK
IAogICAgIFtwbGF5ZXJDb250cm9sbGVyKCkgc2V0SGFzRW5hYmxlZFZpZGVvOnRydWVdOwogICAg
IFtwbGF5ZXJDb250cm9sbGVyKCkgc2V0SGFzVmlkZW86dHJ1ZV07Ci0gICAgW3BsYXllckNvbnRy
b2xsZXIoKSBzZXRDb250ZW50RGltZW5zaW9uczppbml0aWFsUmVjdC5zaXplKCldOworICAgIFtw
bGF5ZXJDb250cm9sbGVyKCkgc2V0Q29udGVudERpbWVuc2lvbnM6dmlkZW9EaW1lbnNpb25zXTsK
IAogICAgIG1fYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNrID0gYWxsb3dzUGljdHVyZUlu
UGljdHVyZVBsYXliYWNrOwogICAgIG1fdmlkZW9WaWV3ID0gJnZpZGVvVmlldzsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9s
bGVyQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2Ny
ZWVuQ29udHJvbGxlckFWS2l0Lm1tCmluZGV4IDdhOTEyMGY3MGQ4NDZlNGI0MjlkMTMyMDQ2MWYy
N2M5M2U5NTcwYTYuLmJhODQzZDk3NWFjNjVjZDY0ZWE4OGY1NzAzZjFmZWRmNzUzNjhkNDYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5D
b250cm9sbGVyQVZLaXQubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZp
ZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbQpAQCAtOTgxLDcgKzk4MSw5IEBAIHZvaWQg
VmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ6OnNldFVwRnVsbHNjcmVlbihIVE1MVmlk
ZW9FbGVtZW50JiB2aWRlb0VsCiAgICAgRmxvYXRSZWN0IHZpZGVvTGF5ZXJGcmFtZSA9IEZsb2F0
UmVjdChGbG9hdFBvaW50KCksIHZpZGVvRWxlbWVudENsaWVudFJlY3Quc2l6ZSgpKTsKICAgICBt
X2Z1bGxzY3JlZW5Nb2RlbC0+c2V0VmlkZW9MYXllckZyYW1lKHZpZGVvTGF5ZXJGcmFtZSk7CiAK
LSAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBbcHJvdGVjdGVk
VGhpcyA9IG1ha2VSZWZQdHIodGhpcyksIHRoaXMsIHZpZGVvRWxlbWVudENsaWVudFJlY3QsIHZp
ZXdSZWYsIG1vZGUsIGFsbG93c1BpY3R1cmVJblBpY3R1cmVdIHsKKyAgICBGbG9hdFNpemUgdmlk
ZW9EaW1lbnNpb25zID0gRmxvYXRTaXplKHZpZGVvRWxlbWVudC52aWRlb1dpZHRoKCksIHZpZGVv
RWxlbWVudC52aWRlb0hlaWdodCgpKTsKKworICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dl
dF9tYWluX3F1ZXVlKCksIFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0aGlzKSwgdGhpcywg
dmlkZW9FbGVtZW50Q2xpZW50UmVjdCwgdmlkZW9EaW1lbnNpb25zLCB2aWV3UmVmLCBtb2RlLCBh
bGxvd3NQaWN0dXJlSW5QaWN0dXJlXSB7CiAgICAgICAgIEFTU0VSVChpc1VJVGhyZWFkKCkpOwog
ICAgICAgICBXZWJUaHJlYWRMb2NrKCk7CiAKQEAgLTk5Myw3ICs5OTUsNyBAQCB2b2lkIFZpZGVv
RnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0OjpzZXRVcEZ1bGxzY3JlZW4oSFRNTFZpZGVvRWxl
bWVudCYgdmlkZW9FbAogCiAgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuVmlldyA9IGFkb3B0TlMo
W1BBTDo6YWxsb2NVSVZpZXdJbnN0YW5jZSgpIGluaXRdKTsKIAotICAgICAgICBtX2ludGVyZmFj
ZS0+c2V0dXBGdWxsc2NyZWVuKCptX3ZpZGVvRnVsbHNjcmVlblZpZXcuZ2V0KCksIHZpZGVvRWxl
bWVudENsaWVudFJlY3QsIHZpZXdSZWYuZ2V0KCksIG1vZGUsIGFsbG93c1BpY3R1cmVJblBpY3R1
cmUsIGZhbHNlKTsKKyAgICAgICAgbV9pbnRlcmZhY2UtPnNldHVwRnVsbHNjcmVlbigqbV92aWRl
b0Z1bGxzY3JlZW5WaWV3LmdldCgpLCB2aWRlb0VsZW1lbnRDbGllbnRSZWN0LCB2aWRlb0RpbWVu
c2lvbnMsIHZpZXdSZWYuZ2V0KCksIG1vZGUsIGFsbG93c1BpY3R1cmVJblBpY3R1cmUsIGZhbHNl
KTsKICAgICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAppbmRleCBhZWY3MWUwM2YzY2Nm
MjhmYmVhZjczMDU5ODk1YTUyOTRhMzEzMWQxLi5lOGQzZmUwNTMzZjhlOTE3MDJhMWMwZjM3ZmEy
NjRjYWZmZDU5ZTUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9W
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaApAQCAtNTUsNiArNTUsOSBAQCB0
eXBlZGVmIFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZU1hYyBQbGF0Zm9ybVZpZGVv
RnVsbHNjcmVlbkludGVyZmFjZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2NvbnN0ZXhwciBz
aXplX3QgRGVmYXVsdE1vY2tQaWN0dXJlSW5QaWN0dXJlV2luZG93V2lkdGggPSAxMDA7Citjb25z
dGV4cHIgc2l6ZV90IERlZmF1bHRNb2NrUGljdHVyZUluUGljdHVyZVdpbmRvd0hlaWdodCA9IDEw
MDsKKwogY2xhc3MgV2ViUGFnZVByb3h5OwogY2xhc3MgUGxheWJhY2tTZXNzaW9uTWFuYWdlclBy
b3h5OwogY2xhc3MgUGxheWJhY2tTZXNzaW9uTW9kZWxDb250ZXh0OwpAQCAtMTYwLDcgKzE2Myw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBoYXNWaWRlb0luUGljdHVyZUluUGljdHVyZURpZENoYW5n
ZShib29sKTsKIAogICAgIC8vIE1lc3NhZ2VzIGZyb20gVmlkZW9GdWxsc2NyZWVuTWFuYWdlcgot
ICAgIHZvaWQgc2V0dXBGdWxsc2NyZWVuV2l0aElEKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVu
dGlmaWVyLCBXZWJLaXQ6OkxheWVySG9zdGluZ0NvbnRleHRJRCB2aWRlb0xheWVySUQsIGNvbnN0
IFdlYkNvcmU6OkludFJlY3QmIGluaXRpYWxSZWN0LCBmbG9hdCBob3N0aW5nU2NhbGVGYWN0b3Is
IFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSwgYm9v
bCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlLCBib29sIHN0YW5kYnkpOworICAgIHZvaWQgc2V0dXBG
dWxsc2NyZWVuV2l0aElEKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLCBXZWJLaXQ6
OkxheWVySG9zdGluZ0NvbnRleHRJRCB2aWRlb0xheWVySUQsIGNvbnN0IFdlYkNvcmU6OkludFJl
Y3QmIGluaXRpYWxSZWN0LCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIHZpZGVvRGltZW5zaW9u
cywgZmxvYXQgaG9zdGluZ1NjYWxlRmFjdG9yLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51
bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUsIGJvb2wgYWxsb3dzUGljdHVyZUluUGljdHVyZSwgYm9v
bCBzdGFuZGJ5KTsKICAgICB2b2lkIHNldElubGluZVJlY3QoUGxheWJhY2tTZXNzaW9uQ29udGV4
dElkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGlubGluZVJlY3QsIGJvb2wgdmlz
aWJsZSk7CiAgICAgdm9pZCBzZXRIYXNWaWRlb0NvbnRlbnRMYXllcihQbGF5YmFja1Nlc3Npb25D
b250ZXh0SWRlbnRpZmllciwgYm9vbCB2YWx1ZSk7CiAgICAgdm9pZCBzZXRIYXNWaWRlbyhQbGF5
YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciwgYm9vbCk7CkBAIC0xODgsNiArMTkxLDcgQEAg
cHJpdmF0ZToKICAgICB2b2lkIGZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZShQbGF5YmFja1Nl
c3Npb25Db250ZXh0SWRlbnRpZmllcik7CiAKICAgICBib29sIG1fbW9ja1ZpZGVvUHJlc2VudGF0
aW9uTW9kZUVuYWJsZWQgeyBmYWxzZSB9OworICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBtX21vY2tQ
aWN0dXJlSW5QaWN0dXJlV2luZG93U2l6ZSB7IERlZmF1bHRNb2NrUGljdHVyZUluUGljdHVyZVdp
bmRvd1dpZHRoLCBEZWZhdWx0TW9ja1BpY3R1cmVJblBpY3R1cmVXaW5kb3dIZWlnaHQgfTsKIAog
ICAgIFdlYlBhZ2VQcm94eSogbV9wYWdlOwogICAgIFJlZjxQbGF5YmFja1Nlc3Npb25NYW5hZ2Vy
UHJveHk+IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1lc3Nh
Z2VzLmluIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFu
YWdlclByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IGFhNGIyMzI1ZjI3MGQ4MzdhYmJkNWZiMGM3ZjAz
MzlhZTBhZTJlYzYuLjQxZjA2Y2M4ZThlMjUxOTc5YjU1MmE0M2EzMTY0NGZkMTI5MmE0NDYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXJQcm94eS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubWVzc2FnZXMuaW4KQEAgLTI0LDcgKzI0LDcg
QEAKIG1lc3NhZ2VzIC0+IFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eSB7CiAgICAgU2V0SGFz
VmlkZW8oV2ViS2l0OjpQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQs
IGJvb2wgaGFzVmlkZW8pCiAgICAgU2V0VmlkZW9EaW1lbnNpb25zKFdlYktpdDo6UGxheWJhY2tT
ZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBXZWJDb3JlOjpGbG9hdFNpemUgdmlk
ZW9EaW1lbnNpb25zKQotICAgIFNldHVwRnVsbHNjcmVlbldpdGhJRChXZWJLaXQ6OlBsYXliYWNr
U2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCwgV2ViS2l0OjpMYXllckhvc3RpbmdD
b250ZXh0SUQgdmlkZW9MYXllcklELCBXZWJDb3JlOjpJbnRSZWN0IGluaXRpYWxSZWN0LCBmbG9h
dCBob3N0aW5nU2NhbGVGYWN0b3IsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6Vmlk
ZW9GdWxsc2NyZWVuTW9kZSB2aWRlb0Z1bGxzY3JlZW5Nb2RlLCBib29sIGFsbG93c1BpY3R1cmVJ
blBpY3R1cmUsIGJvb2wgc3RhbmRieSkKKyAgICBTZXR1cEZ1bGxzY3JlZW5XaXRoSUQoV2ViS2l0
OjpQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQsIFdlYktpdDo6TGF5
ZXJIb3N0aW5nQ29udGV4dElEIHZpZGVvTGF5ZXJJRCwgV2ViQ29yZTo6SW50UmVjdCBpbml0aWFs
UmVjdCwgV2ViQ29yZTo6RmxvYXRTaXplIHZpZGVvRGltZW5zaW9ucywgZmxvYXQgaG9zdGluZ1Nj
YWxlRmFjdG9yLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVl
bk1vZGUgdmlkZW9GdWxsc2NyZWVuTW9kZSwgYm9vbCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlLCBi
b29sIHN0YW5kYnkpCiAgICAgRW50ZXJGdWxsc2NyZWVuKFdlYktpdDo6UGxheWJhY2tTZXNzaW9u
Q29udGV4dElkZW50aWZpZXIgY29udGV4dElkKQogICAgIEV4aXRGdWxsc2NyZWVuKFdlYktpdDo6
UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBXZWJDb3JlOjpJbnRS
ZWN0IGZpbmFsUmVjdCkKICAgICBTZXRJbmxpbmVSZWN0KFdlYktpdDo6UGxheWJhY2tTZXNzaW9u
Q29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBXZWJDb3JlOjpJbnRSZWN0IGlubGluZVJlY3Qs
IGJvb2wgdmlzaWJsZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29h
L1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQppbmRleCAwN2YxMzNkNWIxNGY2
YTg3ZWJkZGJmZTgwNTVjYmEyN2JlMDI0ODkyLi4zNzZlMTA2MjY4YWNkODhjOGZmNzZkYWY0N2Y4
NTUzYjNlMDJlOGI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9W
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCkBAIC01MDYsNyArNTA2LDcg
QEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6Omhhc1ZpZGVvSW5QaWN0dXJlSW5Q
aWN0dXJlRGlkQ2hhbmdlKGJvb2wgdmFsdWUKIAogI3ByYWdtYSBtYXJrIE1lc3NhZ2VzIGZyb20g
VmlkZW9GdWxsc2NyZWVuTWFuYWdlcgogCi12b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94
eTo6c2V0dXBGdWxsc2NyZWVuV2l0aElEKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVy
IGNvbnRleHRJZCwgV2ViS2l0OjpMYXllckhvc3RpbmdDb250ZXh0SUQgdmlkZW9MYXllcklELCBj
b25zdCBXZWJDb3JlOjpJbnRSZWN0JiBpbml0aWFsUmVjdCwgZmxvYXQgaG9zdGluZ0RldmljZVNj
YWxlRmFjdG9yLCBIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgdmlk
ZW9GdWxsc2NyZWVuTW9kZSwgYm9vbCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlLCBib29sIHN0YW5k
YnkpCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6c2V0dXBGdWxsc2NyZWVuV2l0
aElEKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCwgV2ViS2l0OjpM
YXllckhvc3RpbmdDb250ZXh0SUQgdmlkZW9MYXllcklELCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JiBpbml0aWFsUmVjdCwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiB2aWRlb0RpbWVuc2lvbnMs
IGZsb2F0IGhvc3RpbmdEZXZpY2VTY2FsZUZhY3RvciwgSFRNTE1lZGlhRWxlbWVudEVudW1zOjpW
aWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1vZGUsIGJvb2wgYWxsb3dzUGljdHVy
ZUluUGljdHVyZSwgYm9vbCBzdGFuZGJ5KQogewogICAgIE1FU1NBR0VfQ0hFQ0sodmlkZW9MYXll
cklEKTsKIApAQCAtNTE0LDYgKzUxNCw4IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlclBy
b3h5OjpzZXR1cEZ1bGxzY3JlZW5XaXRoSUQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkCiAgICAg
YWRkQ2xpZW50Rm9yQ29udGV4dChjb250ZXh0SWQpOwogCiAgICAgaWYgKG1fbW9ja1ZpZGVvUHJl
c2VudGF0aW9uTW9kZUVuYWJsZWQpIHsKKyAgICAgICAgaWYgKCF2aWRlb0RpbWVuc2lvbnMuaXNF
bXB0eSgpKQorICAgICAgICAgICAgbV9tb2NrUGljdHVyZUluUGljdHVyZVdpbmRvd1NpemUuc2V0
SGVpZ2h0KERlZmF1bHRNb2NrUGljdHVyZUluUGljdHVyZVdpbmRvd1dpZHRoIC8gIHZpZGVvRGlt
ZW5zaW9ucy5hc3BlY3RSYXRpbygpKTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgICAg
ICByZXF1ZXN0VmlkZW9Db250ZW50TGF5ZXIoY29udGV4dElkKTsKICNlbHNlCkBAIC01NDAsOCAr
NTQyLDkgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnNldHVwRnVsbHNjcmVl
bldpdGhJRChQbGF5YmFja1Nlc3Npb25Db250ZXh0SWQKICNpZiBQTEFURk9STShJT1NfRkFNSUxZ
KQogICAgIGF1dG8qIHJvb3ROb2RlID0gZG93bmNhc3Q8UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0Fy
ZWFQcm94eT4oKm1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkucmVtb3RlTGF5ZXJUcmVlSG9zdCgpLnJv
b3ROb2RlKCk7CiAgICAgVUlWaWV3ICpwYXJlbnRWaWV3ID0gcm9vdE5vZGUgPyByb290Tm9kZS0+
dWlWaWV3KCkgOiBuaWw7Ci0gICAgaW50ZXJmYWNlLT5zZXR1cEZ1bGxzY3JlZW4oKm1vZGVsLT5s
YXllckhvc3RWaWV3KCksIGluaXRpYWxSZWN0LCBwYXJlbnRWaWV3LCB2aWRlb0Z1bGxzY3JlZW5N
b2RlLCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlLCBzdGFuZGJ5KTsKKyAgICBpbnRlcmZhY2UtPnNl
dHVwRnVsbHNjcmVlbigqbW9kZWwtPmxheWVySG9zdFZpZXcoKSwgaW5pdGlhbFJlY3QsIHZpZGVv
RGltZW5zaW9ucywgcGFyZW50VmlldywgdmlkZW9GdWxsc2NyZWVuTW9kZSwgYWxsb3dzUGljdHVy
ZUluUGljdHVyZSwgc3RhbmRieSk7CiAjZWxzZQorICAgIFVOVVNFRF9QQVJBTSh2aWRlb0RpbWVu
c2lvbnMpOwogICAgIEludFJlY3QgaW5pdGlhbFdpbmRvd1JlY3Q7CiAgICAgbV9wYWdlLT5yb290
Vmlld1RvV2luZG93KGluaXRpYWxSZWN0LCBpbml0aWFsV2luZG93UmVjdCk7CiAgICAgaW50ZXJm
YWNlLT5zZXR1cEZ1bGxzY3JlZW4oKm1vZGVsLT5sYXllckhvc3RWaWV3KCksIGluaXRpYWxXaW5k
b3dSZWN0LCBtX3BhZ2UtPnBsYXRmb3JtV2luZG93KCksIHZpZGVvRnVsbHNjcmVlbk1vZGUsIGFs
bG93c1BpY3R1cmVJblBpY3R1cmUpOwpAQCAtNTU5LDE4ICs1NjIsMjYgQEAgdm9pZCBWaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnNldEhhc1ZpZGVvKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJ
ZGVudGlmaWVyIGMKIAogdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnNldFZpZGVv
RGltZW5zaW9ucyhQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQsIGNv
bnN0IEZsb2F0U2l6ZSYgdmlkZW9EaW1lbnNpb25zKQogewotICAgIGlmIChtX21vY2tWaWRlb1By
ZXNlbnRhdGlvbk1vZGVFbmFibGVkKQorICAgIGF1dG8qIGludGVyZmFjZSA9IGZpbmRJbnRlcmZh
Y2UoY29udGV4dElkKTsKKyAgICBpZiAoIWludGVyZmFjZSkKICAgICAgICAgcmV0dXJuOwogCi0g
ICAgaWYgKGF1dG8qIGludGVyZmFjZSA9IGZpbmRJbnRlcmZhY2UoY29udGV4dElkKSkKLSAgICAg
ICAgaW50ZXJmYWNlLT52aWRlb0RpbWVuc2lvbnNDaGFuZ2VkKHZpZGVvRGltZW5zaW9ucyk7Cisg
ICAgaWYgKG1fbW9ja1ZpZGVvUHJlc2VudGF0aW9uTW9kZUVuYWJsZWQpIHsKKyAgICAgICAgaWYg
KHZpZGVvRGltZW5zaW9ucy5pc0VtcHR5KCkpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAg
ICAgbV9tb2NrUGljdHVyZUluUGljdHVyZVdpbmRvd1NpemUuc2V0SGVpZ2h0KERlZmF1bHRNb2Nr
UGljdHVyZUluUGljdHVyZVdpbmRvd1dpZHRoIC8gdmlkZW9EaW1lbnNpb25zLmFzcGVjdFJhdGlv
KCkpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaW50ZXJmYWNlLT52aWRlb0RpbWVu
c2lvbnNDaGFuZ2VkKHZpZGVvRGltZW5zaW9ucyk7CiB9CiAKIHZvaWQgVmlkZW9GdWxsc2NyZWVu
TWFuYWdlclByb3h5OjplbnRlckZ1bGxzY3JlZW4oUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50
aWZpZXIgY29udGV4dElkKQogewogICAgIGlmIChtX21vY2tWaWRlb1ByZXNlbnRhdGlvbk1vZGVF
bmFibGVkKSB7CiAgICAgICAgIGRpZEVudGVyRnVsbHNjcmVlbihjb250ZXh0SWQpOwotICAgICAg
ICBzZXRWaWRlb0xheWVyRnJhbWUoY29udGV4dElkLCB7MCwgMCwgMjAwLCAxNTB9KTsKKyAgICAg
ICAgc2V0VmlkZW9MYXllckZyYW1lKGNvbnRleHRJZCwgezAsIDAsIG1fbW9ja1BpY3R1cmVJblBp
Y3R1cmVXaW5kb3dTaXplLndpZHRoKCksIG1fbW9ja1BpY3R1cmVJblBpY3R1cmVXaW5kb3dTaXpl
LmhlaWdodCgpfSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KaW5k
ZXggYTk1YjdiNDcyN2NhYmVhNzIyZDMyMGJjYTk4ZTI1ZWQ0MjNhZTY3ZC4uMDMxM2Q1Yjk2ZTg5
MmJjYzUzNTUxNDAxZjAxNzk2NGJiMTZlYzVkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KQEAgLTI4NSw3
ICsyODUsNyBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmVudGVyVmlkZW9GdWxsc2Ny
ZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRlb0VsZW1lbgogICAgICAgICBpbnRlcmZhY2UtPmxh
eWVySG9zdGluZ0NvbnRleHQoKS0+c2V0Um9vdExheWVyKHZpZGVvTGF5ZXIuZ2V0KCkpOwogICAg
IH0KIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclBy
b3h5OjpTZXR1cEZ1bGxzY3JlZW5XaXRoSUQoY29udGV4dElkLCBpbnRlcmZhY2UtPmxheWVySG9z
dGluZ0NvbnRleHQoKS0+Y29udGV4dElEKCksIHZpZGVvUmVjdCwgbV9wYWdlLT5kZXZpY2VTY2Fs
ZUZhY3RvcigpLCBpbnRlcmZhY2UtPmZ1bGxzY3JlZW5Nb2RlKCksIGFsbG93c1BpY3R1cmVJblBp
Y3R1cmUsIHN0YW5kYnkpKTsKKyAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OlZpZGVvRnVsbHNj
cmVlbk1hbmFnZXJQcm94eTo6U2V0dXBGdWxsc2NyZWVuV2l0aElEKGNvbnRleHRJZCwgaW50ZXJm
YWNlLT5sYXllckhvc3RpbmdDb250ZXh0KCktPmNvbnRleHRJRCgpLCB2aWRlb1JlY3QsIEZsb2F0
U2l6ZSh2aWRlb0VsZW1lbnQudmlkZW9XaWR0aCgpLCB2aWRlb0VsZW1lbnQudmlkZW9IZWlnaHQo
KSksIG1fcGFnZS0+ZGV2aWNlU2NhbGVGYWN0b3IoKSwgaW50ZXJmYWNlLT5mdWxsc2NyZWVuTW9k
ZSgpLCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlLCBzdGFuZGJ5KSk7CiB9CiAKIHZvaWQgVmlkZW9G
dWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJD
b3JlOjpIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQpCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTI5NWU3YjYwMzk0
YWFmNTY5OGI5NDNiOGRhMjAxM2FiYjk1Yzg3MC4uYWM3NGQ1ZWM5NGQ4ZWU4MTVmNjIwMzU1OTZh
MWE2NjUwMjY2NDNmNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIwLTA2LTI2ICBQZW5nIExp
dSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgVmlkZW8gc3BpbGxzIG92ZXIgUGlQ
IHNjcmVlbiBhIGxpdHRsZSB3aGVuIHVzaW5nIFBpY3R1cmUgaW4gUGljdHVyZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjU4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBtZWRpYS9waWN0dXJlLWlu
LXBpY3R1cmUvcGljdHVyZS1pbi1waWN0dXJlLXdpbmRvdy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9waWN0dXJlLWluLXBpY3R1cmUvcGljdHVyZS1p
bi1waWN0dXJlLXdpbmRvdy1hc3BlY3QtcmF0aW8uaHRtbDogQWRkZWQuCisKIDIwMjAtMDYtMjQg
IENsYXJrIFdhbmcgIDxjbGFya193YW5nQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmVkIHVu
cmVzdHJpY3RlZCBrZXl3b3JkIGZyb20gYXR0cmlidXRlcyBpbiBQYW5uZXJOb2RlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9waWN0dXJlLWluLXBpY3R1cmUvcGljdHVyZS1pbi1waWN0
dXJlLXdpbmRvdy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEv
cGljdHVyZS1pbi1waWN0dXJlL3BpY3R1cmUtaW4tcGljdHVyZS13aW5kb3ctYXNwZWN0LXJhdGlv
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43NzAzZjY0YjJmM2ZkODFmZjZhM2YxMjZkMzhkNjJh
MTVkN2I0YTY0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvcGljdHVyZS1p
bi1waWN0dXJlL3BpY3R1cmUtaW4tcGljdHVyZS13aW5kb3ctYXNwZWN0LXJhdGlvLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDkgQEAKK1Rlc3RzIHRoYXQgYSBwaXAgd2luZG93IGhhcyB0aGUgc2Ft
ZSBhc3BlY3QgcmF0aW8gYXMgdGhlIHZpZGVvIGNvbnRlbnQuCisKK1JVTihpbnRlcm5hbHMuc2V0
dGluZ3Muc2V0QWxsb3dzUGljdHVyZUluUGljdHVyZU1lZGlhUGxheWJhY2sodHJ1ZSkpCitSVU4o
aW50ZXJuYWxzLnNldE1vY2tWaWRlb1ByZXNlbnRhdGlvbk1vZGVFbmFibGVkKHRydWUpKQorUlVO
KHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgIi4uL2NvbnRlbnQvdGVzdCIpKQor
RVZFTlQoY2FucGxheXRocm91Z2gpCitFWFBFQ1RFRCAoTWF0aC5hYnMocGlwV2luZG93LmhlaWdo
dCAvIHBpcFdpbmRvdy53aWR0aCAtIDI0MCAvIDMyMCkgPCAnMC4wMScpIE9LCitFTkQgT0YgVEVT
VAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9waWN0dXJlLWluLXBpY3R1cmUvcGlj
dHVyZS1pbi1waWN0dXJlLXdpbmRvdy1hc3BlY3QtcmF0aW8uaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3BpY3R1cmUtaW4tcGljdHVyZS9waWN0dXJlLWluLXBpY3R1cmUtd2luZG93LWFzcGVjdC1y
YXRpby5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFhNWI0Mjc5ZWMwNTQwMjkxYzliOThjY2M4OWNhNGE1YmYy
ZTc4MjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9waWN0dXJlLWluLXBp
Y3R1cmUvcGljdHVyZS1pbi1waWN0dXJlLXdpbmRvdy1hc3BlY3QtcmF0aW8uaHRtbApAQCAtMCww
ICsxLDQzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHNjcmlwdCBz
cmM9Ii4uL3ZpZGVvLXRlc3QuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi9tZWRp
YS1maWxlLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgICAgICB3aW5kb3cuYWRkRXZl
bnRMaXN0ZW5lcignbG9hZCcsIGFzeW5jIGV2ZW50ID0+IHsKKyAgICAgICAgICAgIGlmICghd2lu
ZG93LmludGVybmFscykgeworICAgICAgICAgICAgICAgIGZhaWxUZXN0KCdUaGlzIHRlc3QgcmVx
dWlyZXMgd2luZG93LmludGVybmFscy4nKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsKKworICAgICAgICAg
ICAgcnVuKCdpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzUGljdHVyZUluUGljdHVyZU1lZGlh
UGxheWJhY2sodHJ1ZSknKTsKKyAgICAgICAgICAgIHJ1bignaW50ZXJuYWxzLnNldE1vY2tWaWRl
b1ByZXNlbnRhdGlvbk1vZGVFbmFibGVkKHRydWUpJyk7CisKKyAgICAgICAgICAgIHJ1bigndmlk
ZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiLi4vY29udGVudC90ZXN0IiknKTsKKyAg
ICAgICAgICAgIGF3YWl0IHdhaXRGb3IodmlkZW8sICdjYW5wbGF5dGhyb3VnaCcpOworCisgICAg
ICAgICAgICBydW5XaXRoS2V5RG93bigoKSA9PiB7CisgICAgICAgICAgICAgICAgdmlkZW8ucmVx
dWVzdFBpY3R1cmVJblBpY3R1cmUoKQorICAgICAgICAgICAgICAgIC50aGVuKHBpcFdpbmRvdyA9
PiB7CisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5waXBXaW5kb3cgPSBwaXBXaW5kb3c7Cisg
ICAgICAgICAgICAgICAgICAgIC8vIENvbXBhcmUgZmxvYXRpbmcgcG9pbnQgbnVtYmVycyB3aXRo
IHRoZSBwcmVjaXNpb24gMC4wMQorICAgICAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoJ01h
dGguYWJzKHBpcFdpbmRvdy5oZWlnaHQgLyBwaXBXaW5kb3cud2lkdGggLSAyNDAgLyAzMjApJywg
MC4wMSwgJzwnKTsKKworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5leGl0UGljdHVyZUlu
UGljdHVyZSgpLnRoZW4oZW5kVGVzdCkuY2F0Y2goKCkgPT4geworICAgICAgICAgICAgICAgICAg
ICAgICAgZmFpbFRlc3QoJ0ZhaWxlZCB0byBleGl0IHRoZSBQaWN0dXJlLWluLVBpY3R1cmUgbW9k
ZS4nKTsKKyAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAg
ICAgICAgICAgICAuY2F0Y2goZXJyb3IgPT4geworICAgICAgICAgICAgICAgICAgICBmYWlsVGVz
dCgiRmFpbGVkIHRvIGVudGVyIHRoZSBQaWN0dXJlLWluLVBpY3R1cmUgbW9kZS4iKTsKKyAgICAg
ICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIH0pOworICAgICAgICB9KTsKKyAgICA8L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXY+VGVzdHMgdGhhdCBhIHBpcCB3aW5kb3cgaGFz
IHRoZSBzYW1lIGFzcGVjdCByYXRpbyBhcyB0aGUgdmlkZW8gY29udGVudC48L2Rpdj4KKyAgICA8
dmlkZW8gY29udHJvbHMgd2lkdGg9IjIiIGhlaWdodD0iMiI+PC92aWRlbz4KKzwvYm9keT4KKzwv
aHRtbD4K
</data>
<flag name="review"
          id="418323"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403081</attachid>
            <date>2020-06-29 10:47:51 -0700</date>
            <delta_ts>2020-06-29 16:32:50 -0700</delta_ts>
            <desc>patch for landing</desc>
            <filename>bug-213658-20200629104750.patch</filename>
            <type>text/plain</type>
            <size>18931</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNDkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzA3NjgzZjIyNmVjYzY2
YWJkNjZmZTkzNTE2MGU0MWVlM2NjOTljOC4uOTFmZmJhMjFiZTQzNzhiZDQxOTljNDBkMGNhOWYw
MTdmZGIxYzA3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIwLTA2LTI5ICBQZW5n
IExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgVmlkZW8gc3BpbGxzIG92ZXIg
UGlQIHNjcmVlbiBhIGxpdHRsZSB3aGVuIHVzaW5nIFBpY3R1cmUgaW4gUGljdHVyZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjU4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgIFdlIG5lZWQgdG8gcHJvdmlk
ZSB2aWRlbyBjb250ZW50IGRpbWVuc2lvbnMgaW5zdGVhZCBvZiB2aWRlbyBlbGVtZW50IHNpemVz
IHRvCisgICAgICAgIEFWUGxheWVyQ29udHJvbGxlciB0byBtYWtlIHN1cmUgdGhhdCB0aGUgUGlj
dHVyZS1pbi1QaWN0dXJlIHdpbmRvdyB3aWxsIGhhdmUKKyAgICAgICAgdGhlIGNvcnJlY3QgYXNw
ZWN0IHJhdGlvLgorCisgICAgICAgIFRlc3Q6IG1lZGlhL3BpY3R1cmUtaW4tcGljdHVyZS9waWN0
dXJlLWluLXBpY3R1cmUtd2luZG93LWFzcGVjdC1yYXRpby5odG1sCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW06CisgICAgICAgIChWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6c2V0dXBGdWxsc2NyZWVuKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0Lm1tOgorICAgICAg
ICAoVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ6OnNldFVwRnVsbHNjcmVlbik6CisK
IDIwMjAtMDYtMjQgIENsYXJrIFdhbmcgIDxjbGFya193YW5nQGFwcGxlLmNvbT4KIAogICAgICAg
ICBSZW1vdmVkIHVucmVzdHJpY3RlZCBrZXl3b3JkIGZyb20gYXR0cmlidXRlcyBpbiBQYW5uZXJO
b2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCmluZGV4IDBhODYwZjMyOGY3NTFlMmI4MmM1MTk1NmFhNTY1ZWRmYzY5ZGYzYzMu
Ljc5Y2MxNWZlNDliNGJhNGFhYjA5NWFhODQzM2ZkMDQwZjQ5NWYxN2EgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjEgQEAKKzIwMjAtMDYtMjkgIFBlbmcgTGl1ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4K
KworICAgICAgICBWaWRlbyBzcGlsbHMgb3ZlciBQaVAgc2NyZWVuIGEgbGl0dGxlIHdoZW4gdXNp
bmcgUGljdHVyZSBpbiBQaWN0dXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMTM2NTgKKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24u
CisKKyAgICAgICAgQWRkIHRoZSB2aWRlbyBjb250ZW50IGRpbWVuc2lvbnMgdG8gdGhlIElQQyBt
ZXNzYWdlIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6U2V0dXBGdWxsc2NyZWVuV2l0aElE
LgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94
eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJv
eHkubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVl
bk1hbmFnZXJQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5OjpzZXR1cEZ1bGxzY3JlZW5XaXRoSUQpOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnNldFZpZGVvRGltZW5zaW9ucyk6CisgICAgICAgIChXZWJL
aXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6ZW50ZXJGdWxsc2NyZWVuKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW06CisgICAgICAg
IChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9y
VmlkZW9FbGVtZW50KToKKwogMjAyMC0wNi0yNCAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBw
bGUuY29tPgogCiAgICAgICAgIFtJUENdIFVzZSBXZWJLaXQ6OkxheWVySG9zdGluZ0NvbnRleHRJ
RCBpbnN0ZWFkIG9mIHVpbnQzMl90IGZvciB2aWRlb0xheWVySUQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
LmgKaW5kZXggNDM5MGNkNmExMTgyOThlZDFjNmNjMjlhY2Q4MDc0YzJkYjFlNzY4NC4uMzU3ZDlh
ZTRhZDJjYzg0MmZlNzg4ZWExMmQ4ZjhkNWRlM2EyNTU3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
LmgKQEAgLTc5LDcgKzc5LDcgQEAgcHVibGljOgogICAgIC8vIFBsYXliYWNrU2Vzc2lvbk1vZGVs
Q2xpZW50CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBleHRlcm5hbFBsYXliYWNrQ2hhbmdlZChi
b29sIGVuYWJsZWQsIFBsYXliYWNrU2Vzc2lvbk1vZGVsOjpFeHRlcm5hbFBsYXliYWNrVGFyZ2V0
VHlwZSwgY29uc3QgU3RyaW5nJiBsb2NhbGl6ZWREZXZpY2VOYW1lKSBmaW5hbDsKIAotICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgc2V0dXBGdWxsc2NyZWVuKFVJVmlldyYsIGNvbnN0IEludFJlY3Qm
IGluaXRpYWxSZWN0LCBVSVZpZXcgKiwgSFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxz
Y3JlZW5Nb2RlLCBib29sIGFsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFjaywgYm9vbCBzdGFu
ZGJ5KTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldHVwRnVsbHNjcmVlbihVSVZpZXcmIHZp
ZGVvVmlldywgY29uc3QgSW50UmVjdCYgaW5pdGlhbFJlY3QsIGNvbnN0IEZsb2F0U2l6ZSYgdmlk
ZW9EaW1lbnNpb25zLCBVSVZpZXcqIHBhcmVudFZpZXcsIEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6
VmlkZW9GdWxsc2NyZWVuTW9kZSwgYm9vbCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlUGxheWJhY2ss
IGJvb2wgc3RhbmRieSk7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBlbnRlckZ1bGxzY3JlZW4o
KTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGV4aXRGdWxsc2NyZWVuKGNvbnN0IEludFJlY3Qm
IGZpbmFsUmVjdCk7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjbGVhbnVwRnVsbHNjcmVlbigp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZUFWS2l0Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVs
bHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCmluZGV4IGI1MzcyOGI2YTRkNmU4ZWFmM2VkNWVhNmQx
MWYzNjkyYmVlYjcwZWQuLjRlMTA4ZTM4Y2YyN2RiNzk0ZGIxNjNkMGYxZTM3NGJlOWY1NmE5ODcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5J
bnRlcmZhY2VBVktpdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KQEAgLTg4OSwxNCArODg5LDE0IEBAIHZvaWQgVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmFwcGxpY2F0aW9uRGlkQmVjb21lQWN0aXZlKCkK
ICAgICBMT0coRnVsbHNjcmVlbiwgIlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjphcHBs
aWNhdGlvbkRpZEJlY29tZUFjdGl2ZSglcCkiLCB0aGlzKTsKIH0KIAotdm9pZCBWaWRlb0Z1bGxz
Y3JlZW5JbnRlcmZhY2VBVktpdDo6c2V0dXBGdWxsc2NyZWVuKFVJVmlldyYgdmlkZW9WaWV3LCBj
b25zdCBJbnRSZWN0JiBpbml0aWFsUmVjdCwgVUlWaWV3KiBwYXJlbnRWaWV3LCBIVE1MTWVkaWFF
bGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgbW9kZSwgYm9vbCBhbGxvd3NQaWN0dXJl
SW5QaWN0dXJlUGxheWJhY2ssIGJvb2wgc3RhbmRieSkKK3ZvaWQgVmlkZW9GdWxsc2NyZWVuSW50
ZXJmYWNlQVZLaXQ6OnNldHVwRnVsbHNjcmVlbihVSVZpZXcmIHZpZGVvVmlldywgY29uc3QgSW50
UmVjdCYgaW5pdGlhbFJlY3QsIGNvbnN0IEZsb2F0U2l6ZSYgdmlkZW9EaW1lbnNpb25zLCBVSVZp
ZXcqIHBhcmVudFZpZXcsIEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9k
ZSBtb2RlLCBib29sIGFsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFjaywgYm9vbCBzdGFuZGJ5
KQogewogICAgIEFTU0VSVChzdGFuZGJ5IHx8IG1vZGUgIT0gSFRNTE1lZGlhRWxlbWVudEVudW1z
OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlTm9uZSk7CiAgICAgTE9HKEZ1bGxzY3JlZW4sICJWaWRlb0Z1
bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6c2V0dXBGdWxsc2NyZWVuKCVwKSIsIHRoaXMpOwogCiAg
ICAgW3BsYXllckNvbnRyb2xsZXIoKSBzZXRIYXNFbmFibGVkVmlkZW86dHJ1ZV07CiAgICAgW3Bs
YXllckNvbnRyb2xsZXIoKSBzZXRIYXNWaWRlbzp0cnVlXTsKLSAgICBbcGxheWVyQ29udHJvbGxl
cigpIHNldENvbnRlbnREaW1lbnNpb25zOmluaXRpYWxSZWN0LnNpemUoKV07CisgICAgW3BsYXll
ckNvbnRyb2xsZXIoKSBzZXRDb250ZW50RGltZW5zaW9uczp2aWRlb0RpbWVuc2lvbnNdOwogCiAg
ICAgbV9hbGxvd3NQaWN0dXJlSW5QaWN0dXJlUGxheWJhY2sgPSBhbGxvd3NQaWN0dXJlSW5QaWN0
dXJlUGxheWJhY2s7CiAgICAgbV92aWRlb1ZpZXcgPSAmdmlkZW9WaWV3OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJB
VktpdC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5D
b250cm9sbGVyQVZLaXQubW0KaW5kZXggN2E5MTIwZjcwZDg0NmU0YjQyOWQxMzIwNDYxZjI3Yzkz
ZTk1NzBhNi4uYzhmOWJjZWExYzU1MzMzZDllYzAyMmQ0YTQ2M2JmZmZmMjM1ZTk0YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkNvbnRy
b2xsZXJBVktpdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9G
dWxsc2NyZWVuQ29udHJvbGxlckFWS2l0Lm1tCkBAIC05ODEsNyArOTgxLDkgQEAgdm9pZCBWaWRl
b0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6c2V0VXBGdWxsc2NyZWVuKEhUTUxWaWRlb0Vs
ZW1lbnQmIHZpZGVvRWwKICAgICBGbG9hdFJlY3QgdmlkZW9MYXllckZyYW1lID0gRmxvYXRSZWN0
KEZsb2F0UG9pbnQoKSwgdmlkZW9FbGVtZW50Q2xpZW50UmVjdC5zaXplKCkpOwogICAgIG1fZnVs
bHNjcmVlbk1vZGVsLT5zZXRWaWRlb0xheWVyRnJhbWUodmlkZW9MYXllckZyYW1lKTsKIAotICAg
IGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIFtwcm90ZWN0ZWRUaGlz
ID0gbWFrZVJlZlB0cih0aGlzKSwgdGhpcywgdmlkZW9FbGVtZW50Q2xpZW50UmVjdCwgdmlld1Jl
ZiwgbW9kZSwgYWxsb3dzUGljdHVyZUluUGljdHVyZV0geworICAgIEZsb2F0U2l6ZSB2aWRlb0Rp
bWVuc2lvbnMgPSB7IChmbG9hdCl2aWRlb0VsZW1lbnQudmlkZW9XaWR0aCgpLCAoZmxvYXQpdmlk
ZW9FbGVtZW50LnZpZGVvSGVpZ2h0KCkgfTsKKworICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNo
X2dldF9tYWluX3F1ZXVlKCksIFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0aGlzKSwgdGhp
cywgdmlkZW9FbGVtZW50Q2xpZW50UmVjdCwgdmlkZW9EaW1lbnNpb25zLCB2aWV3UmVmLCBtb2Rl
LCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlXSB7CiAgICAgICAgIEFTU0VSVChpc1VJVGhyZWFkKCkp
OwogICAgICAgICBXZWJUaHJlYWRMb2NrKCk7CiAKQEAgLTk5Myw3ICs5OTUsNyBAQCB2b2lkIFZp
ZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0OjpzZXRVcEZ1bGxzY3JlZW4oSFRNTFZpZGVv
RWxlbWVudCYgdmlkZW9FbAogCiAgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuVmlldyA9IGFkb3B0
TlMoW1BBTDo6YWxsb2NVSVZpZXdJbnN0YW5jZSgpIGluaXRdKTsKIAotICAgICAgICBtX2ludGVy
ZmFjZS0+c2V0dXBGdWxsc2NyZWVuKCptX3ZpZGVvRnVsbHNjcmVlblZpZXcuZ2V0KCksIHZpZGVv
RWxlbWVudENsaWVudFJlY3QsIHZpZXdSZWYuZ2V0KCksIG1vZGUsIGFsbG93c1BpY3R1cmVJblBp
Y3R1cmUsIGZhbHNlKTsKKyAgICAgICAgbV9pbnRlcmZhY2UtPnNldHVwRnVsbHNjcmVlbigqbV92
aWRlb0Z1bGxzY3JlZW5WaWV3LmdldCgpLCB2aWRlb0VsZW1lbnRDbGllbnRSZWN0LCB2aWRlb0Rp
bWVuc2lvbnMsIHZpZXdSZWYuZ2V0KCksIG1vZGUsIGFsbG93c1BpY3R1cmVJblBpY3R1cmUsIGZh
bHNlKTsKICAgICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Q29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAppbmRleCBhZWY3MWUwM2Yz
Y2NmMjhmYmVhZjczMDU5ODk1YTUyOTRhMzEzMWQxLi5lOGQzZmUwNTMzZjhlOTE3MDJhMWMwZjM3
ZmEyNjRjYWZmZDU5ZTUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaApAQCAtNTUsNiArNTUsOSBA
QCB0eXBlZGVmIFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZU1hYyBQbGF0Zm9ybVZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2NvbnN0ZXhw
ciBzaXplX3QgRGVmYXVsdE1vY2tQaWN0dXJlSW5QaWN0dXJlV2luZG93V2lkdGggPSAxMDA7Citj
b25zdGV4cHIgc2l6ZV90IERlZmF1bHRNb2NrUGljdHVyZUluUGljdHVyZVdpbmRvd0hlaWdodCA9
IDEwMDsKKwogY2xhc3MgV2ViUGFnZVByb3h5OwogY2xhc3MgUGxheWJhY2tTZXNzaW9uTWFuYWdl
clByb3h5OwogY2xhc3MgUGxheWJhY2tTZXNzaW9uTW9kZWxDb250ZXh0OwpAQCAtMTYwLDcgKzE2
Myw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBoYXNWaWRlb0luUGljdHVyZUluUGljdHVyZURpZENo
YW5nZShib29sKTsKIAogICAgIC8vIE1lc3NhZ2VzIGZyb20gVmlkZW9GdWxsc2NyZWVuTWFuYWdl
cgotICAgIHZvaWQgc2V0dXBGdWxsc2NyZWVuV2l0aElEKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJ
ZGVudGlmaWVyLCBXZWJLaXQ6OkxheWVySG9zdGluZ0NvbnRleHRJRCB2aWRlb0xheWVySUQsIGNv
bnN0IFdlYkNvcmU6OkludFJlY3QmIGluaXRpYWxSZWN0LCBmbG9hdCBob3N0aW5nU2NhbGVGYWN0
b3IsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSwg
Ym9vbCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlLCBib29sIHN0YW5kYnkpOworICAgIHZvaWQgc2V0
dXBGdWxsc2NyZWVuV2l0aElEKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLCBXZWJL
aXQ6OkxheWVySG9zdGluZ0NvbnRleHRJRCB2aWRlb0xheWVySUQsIGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmIGluaXRpYWxSZWN0LCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIHZpZGVvRGltZW5z
aW9ucywgZmxvYXQgaG9zdGluZ1NjYWxlRmFjdG9yLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUsIGJvb2wgYWxsb3dzUGljdHVyZUluUGljdHVyZSwg
Ym9vbCBzdGFuZGJ5KTsKICAgICB2b2lkIHNldElubGluZVJlY3QoUGxheWJhY2tTZXNzaW9uQ29u
dGV4dElkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGlubGluZVJlY3QsIGJvb2wg
dmlzaWJsZSk7CiAgICAgdm9pZCBzZXRIYXNWaWRlb0NvbnRlbnRMYXllcihQbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllciwgYm9vbCB2YWx1ZSk7CiAgICAgdm9pZCBzZXRIYXNWaWRlbyhQ
bGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciwgYm9vbCk7CkBAIC0xODgsNiArMTkxLDcg
QEAgcHJpdmF0ZToKICAgICB2b2lkIGZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZShQbGF5YmFj
a1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcik7CiAKICAgICBib29sIG1fbW9ja1ZpZGVvUHJlc2Vu
dGF0aW9uTW9kZUVuYWJsZWQgeyBmYWxzZSB9OworICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBtX21v
Y2tQaWN0dXJlSW5QaWN0dXJlV2luZG93U2l6ZSB7IERlZmF1bHRNb2NrUGljdHVyZUluUGljdHVy
ZVdpbmRvd1dpZHRoLCBEZWZhdWx0TW9ja1BpY3R1cmVJblBpY3R1cmVXaW5kb3dIZWlnaHQgfTsK
IAogICAgIFdlYlBhZ2VQcm94eSogbV9wYWdlOwogICAgIFJlZjxQbGF5YmFja1Nlc3Npb25NYW5h
Z2VyUHJveHk+IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1l
c3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVu
TWFuYWdlclByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IGFhNGIyMzI1ZjI3MGQ4MzdhYmJkNWZiMGM3
ZjAzMzlhZTBhZTJlYzYuLjQxZjA2Y2M4ZThlMjUxOTc5YjU1MmE0M2EzMTY0NGZkMTI5MmE0NDYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVl
bk1hbmFnZXJQcm94eS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9D
b2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubWVzc2FnZXMuaW4KQEAgLTI0LDcgKzI0
LDcgQEAKIG1lc3NhZ2VzIC0+IFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eSB7CiAgICAgU2V0
SGFzVmlkZW8oV2ViS2l0OjpQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0
SWQsIGJvb2wgaGFzVmlkZW8pCiAgICAgU2V0VmlkZW9EaW1lbnNpb25zKFdlYktpdDo6UGxheWJh
Y2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBXZWJDb3JlOjpGbG9hdFNpemUg
dmlkZW9EaW1lbnNpb25zKQotICAgIFNldHVwRnVsbHNjcmVlbldpdGhJRChXZWJLaXQ6OlBsYXli
YWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCwgV2ViS2l0OjpMYXllckhvc3Rp
bmdDb250ZXh0SUQgdmlkZW9MYXllcklELCBXZWJDb3JlOjpJbnRSZWN0IGluaXRpYWxSZWN0LCBm
bG9hdCBob3N0aW5nU2NhbGVGYWN0b3IsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6
VmlkZW9GdWxsc2NyZWVuTW9kZSB2aWRlb0Z1bGxzY3JlZW5Nb2RlLCBib29sIGFsbG93c1BpY3R1
cmVJblBpY3R1cmUsIGJvb2wgc3RhbmRieSkKKyAgICBTZXR1cEZ1bGxzY3JlZW5XaXRoSUQoV2Vi
S2l0OjpQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQsIFdlYktpdDo6
TGF5ZXJIb3N0aW5nQ29udGV4dElEIHZpZGVvTGF5ZXJJRCwgV2ViQ29yZTo6SW50UmVjdCBpbml0
aWFsUmVjdCwgV2ViQ29yZTo6RmxvYXRTaXplIHZpZGVvRGltZW5zaW9ucywgZmxvYXQgaG9zdGlu
Z1NjYWxlRmFjdG9yLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNj
cmVlbk1vZGUgdmlkZW9GdWxsc2NyZWVuTW9kZSwgYm9vbCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJl
LCBib29sIHN0YW5kYnkpCiAgICAgRW50ZXJGdWxsc2NyZWVuKFdlYktpdDo6UGxheWJhY2tTZXNz
aW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkKQogICAgIEV4aXRGdWxsc2NyZWVuKFdlYktp
dDo6UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBXZWJDb3JlOjpJ
bnRSZWN0IGZpbmFsUmVjdCkKICAgICBTZXRJbmxpbmVSZWN0KFdlYktpdDo6UGxheWJhY2tTZXNz
aW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBXZWJDb3JlOjpJbnRSZWN0IGlubGluZVJl
Y3QsIGJvb2wgdmlzaWJsZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQppbmRleCAwN2YxMzNkNWIx
NGY2YTg3ZWJkZGJmZTgwNTVjYmEyN2JlMDI0ODkyLi4zNzZlMTA2MjY4YWNkODhjOGZmNzZkYWY0
N2Y4NTUzYjNlMDJlOGI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCkBAIC01MDYsNyArNTA2
LDcgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6Omhhc1ZpZGVvSW5QaWN0dXJl
SW5QaWN0dXJlRGlkQ2hhbmdlKGJvb2wgdmFsdWUKIAogI3ByYWdtYSBtYXJrIE1lc3NhZ2VzIGZy
b20gVmlkZW9GdWxsc2NyZWVuTWFuYWdlcgogCi12b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQ
cm94eTo6c2V0dXBGdWxsc2NyZWVuV2l0aElEKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlm
aWVyIGNvbnRleHRJZCwgV2ViS2l0OjpMYXllckhvc3RpbmdDb250ZXh0SUQgdmlkZW9MYXllcklE
LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBpbml0aWFsUmVjdCwgZmxvYXQgaG9zdGluZ0Rldmlj
ZVNjYWxlRmFjdG9yLCBIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUg
dmlkZW9GdWxsc2NyZWVuTW9kZSwgYm9vbCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlLCBib29sIHN0
YW5kYnkpCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6c2V0dXBGdWxsc2NyZWVu
V2l0aElEKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCwgV2ViS2l0
OjpMYXllckhvc3RpbmdDb250ZXh0SUQgdmlkZW9MYXllcklELCBjb25zdCBXZWJDb3JlOjpJbnRS
ZWN0JiBpbml0aWFsUmVjdCwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiB2aWRlb0RpbWVuc2lv
bnMsIGZsb2F0IGhvc3RpbmdEZXZpY2VTY2FsZUZhY3RvciwgSFRNTE1lZGlhRWxlbWVudEVudW1z
OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1vZGUsIGJvb2wgYWxsb3dzUGlj
dHVyZUluUGljdHVyZSwgYm9vbCBzdGFuZGJ5KQogewogICAgIE1FU1NBR0VfQ0hFQ0sodmlkZW9M
YXllcklEKTsKIApAQCAtNTE0LDYgKzUxNCw4IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5OjpzZXR1cEZ1bGxzY3JlZW5XaXRoSUQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkCiAg
ICAgYWRkQ2xpZW50Rm9yQ29udGV4dChjb250ZXh0SWQpOwogCiAgICAgaWYgKG1fbW9ja1ZpZGVv
UHJlc2VudGF0aW9uTW9kZUVuYWJsZWQpIHsKKyAgICAgICAgaWYgKCF2aWRlb0RpbWVuc2lvbnMu
aXNFbXB0eSgpKQorICAgICAgICAgICAgbV9tb2NrUGljdHVyZUluUGljdHVyZVdpbmRvd1NpemUu
c2V0SGVpZ2h0KERlZmF1bHRNb2NrUGljdHVyZUluUGljdHVyZVdpbmRvd1dpZHRoIC8gIHZpZGVv
RGltZW5zaW9ucy5hc3BlY3RSYXRpbygpKTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAg
ICAgICByZXF1ZXN0VmlkZW9Db250ZW50TGF5ZXIoY29udGV4dElkKTsKICNlbHNlCkBAIC01NDAs
OCArNTQyLDkgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnNldHVwRnVsbHNj
cmVlbldpdGhJRChQbGF5YmFja1Nlc3Npb25Db250ZXh0SWQKICNpZiBQTEFURk9STShJT1NfRkFN
SUxZKQogICAgIGF1dG8qIHJvb3ROb2RlID0gZG93bmNhc3Q8UmVtb3RlTGF5ZXJUcmVlRHJhd2lu
Z0FyZWFQcm94eT4oKm1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkucmVtb3RlTGF5ZXJUcmVlSG9zdCgp
LnJvb3ROb2RlKCk7CiAgICAgVUlWaWV3ICpwYXJlbnRWaWV3ID0gcm9vdE5vZGUgPyByb290Tm9k
ZS0+dWlWaWV3KCkgOiBuaWw7Ci0gICAgaW50ZXJmYWNlLT5zZXR1cEZ1bGxzY3JlZW4oKm1vZGVs
LT5sYXllckhvc3RWaWV3KCksIGluaXRpYWxSZWN0LCBwYXJlbnRWaWV3LCB2aWRlb0Z1bGxzY3Jl
ZW5Nb2RlLCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlLCBzdGFuZGJ5KTsKKyAgICBpbnRlcmZhY2Ut
PnNldHVwRnVsbHNjcmVlbigqbW9kZWwtPmxheWVySG9zdFZpZXcoKSwgaW5pdGlhbFJlY3QsIHZp
ZGVvRGltZW5zaW9ucywgcGFyZW50VmlldywgdmlkZW9GdWxsc2NyZWVuTW9kZSwgYWxsb3dzUGlj
dHVyZUluUGljdHVyZSwgc3RhbmRieSk7CiAjZWxzZQorICAgIFVOVVNFRF9QQVJBTSh2aWRlb0Rp
bWVuc2lvbnMpOwogICAgIEludFJlY3QgaW5pdGlhbFdpbmRvd1JlY3Q7CiAgICAgbV9wYWdlLT5y
b290Vmlld1RvV2luZG93KGluaXRpYWxSZWN0LCBpbml0aWFsV2luZG93UmVjdCk7CiAgICAgaW50
ZXJmYWNlLT5zZXR1cEZ1bGxzY3JlZW4oKm1vZGVsLT5sYXllckhvc3RWaWV3KCksIGluaXRpYWxX
aW5kb3dSZWN0LCBtX3BhZ2UtPnBsYXRmb3JtV2luZG93KCksIHZpZGVvRnVsbHNjcmVlbk1vZGUs
IGFsbG93c1BpY3R1cmVJblBpY3R1cmUpOwpAQCAtNTU5LDE4ICs1NjIsMjYgQEAgdm9pZCBWaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnNldEhhc1ZpZGVvKFBsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyIGMKIAogdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnNldFZp
ZGVvRGltZW5zaW9ucyhQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQs
IGNvbnN0IEZsb2F0U2l6ZSYgdmlkZW9EaW1lbnNpb25zKQogewotICAgIGlmIChtX21vY2tWaWRl
b1ByZXNlbnRhdGlvbk1vZGVFbmFibGVkKQorICAgIGF1dG8qIGludGVyZmFjZSA9IGZpbmRJbnRl
cmZhY2UoY29udGV4dElkKTsKKyAgICBpZiAoIWludGVyZmFjZSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgaWYgKGF1dG8qIGludGVyZmFjZSA9IGZpbmRJbnRlcmZhY2UoY29udGV4dElkKSkKLSAg
ICAgICAgaW50ZXJmYWNlLT52aWRlb0RpbWVuc2lvbnNDaGFuZ2VkKHZpZGVvRGltZW5zaW9ucyk7
CisgICAgaWYgKG1fbW9ja1ZpZGVvUHJlc2VudGF0aW9uTW9kZUVuYWJsZWQpIHsKKyAgICAgICAg
aWYgKHZpZGVvRGltZW5zaW9ucy5pc0VtcHR5KCkpCisgICAgICAgICAgICByZXR1cm47CisKKyAg
ICAgICAgbV9tb2NrUGljdHVyZUluUGljdHVyZVdpbmRvd1NpemUuc2V0SGVpZ2h0KERlZmF1bHRN
b2NrUGljdHVyZUluUGljdHVyZVdpbmRvd1dpZHRoIC8gdmlkZW9EaW1lbnNpb25zLmFzcGVjdFJh
dGlvKCkpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaW50ZXJmYWNlLT52aWRlb0Rp
bWVuc2lvbnNDaGFuZ2VkKHZpZGVvRGltZW5zaW9ucyk7CiB9CiAKIHZvaWQgVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5OjplbnRlckZ1bGxzY3JlZW4oUGxheWJhY2tTZXNzaW9uQ29udGV4dElk
ZW50aWZpZXIgY29udGV4dElkKQogewogICAgIGlmIChtX21vY2tWaWRlb1ByZXNlbnRhdGlvbk1v
ZGVFbmFibGVkKSB7CiAgICAgICAgIGRpZEVudGVyRnVsbHNjcmVlbihjb250ZXh0SWQpOwotICAg
ICAgICBzZXRWaWRlb0xheWVyRnJhbWUoY29udGV4dElkLCB7MCwgMCwgMjAwLCAxNTB9KTsKKyAg
ICAgICAgc2V0VmlkZW9MYXllckZyYW1lKGNvbnRleHRJZCwgezAsIDAsIG1fbW9ja1BpY3R1cmVJ
blBpY3R1cmVXaW5kb3dTaXplLndpZHRoKCksIG1fbW9ja1BpY3R1cmVJblBpY3R1cmVXaW5kb3dT
aXplLmhlaWdodCgpfSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0K
aW5kZXggYTk1YjdiNDcyN2NhYmVhNzIyZDMyMGJjYTk4ZTI1ZWQ0MjNhZTY3ZC4uMDMxM2Q1Yjk2
ZTg5MmJjYzUzNTUxNDAxZjAxNzk2NGJiMTZlYzVkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KKysrIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KQEAgLTI4
NSw3ICsyODUsNyBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmVudGVyVmlkZW9GdWxs
c2NyZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRlb0VsZW1lbgogICAgICAgICBpbnRlcmZhY2Ut
PmxheWVySG9zdGluZ0NvbnRleHQoKS0+c2V0Um9vdExheWVyKHZpZGVvTGF5ZXIuZ2V0KCkpOwog
ICAgIH0KIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5OjpTZXR1cEZ1bGxzY3JlZW5XaXRoSUQoY29udGV4dElkLCBpbnRlcmZhY2UtPmxheWVy
SG9zdGluZ0NvbnRleHQoKS0+Y29udGV4dElEKCksIHZpZGVvUmVjdCwgbV9wYWdlLT5kZXZpY2VT
Y2FsZUZhY3RvcigpLCBpbnRlcmZhY2UtPmZ1bGxzY3JlZW5Nb2RlKCksIGFsbG93c1BpY3R1cmVJ
blBpY3R1cmUsIHN0YW5kYnkpKTsKKyAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eTo6U2V0dXBGdWxsc2NyZWVuV2l0aElEKGNvbnRleHRJZCwgaW50
ZXJmYWNlLT5sYXllckhvc3RpbmdDb250ZXh0KCktPmNvbnRleHRJRCgpLCB2aWRlb1JlY3QsIEZs
b2F0U2l6ZSh2aWRlb0VsZW1lbnQudmlkZW9XaWR0aCgpLCB2aWRlb0VsZW1lbnQudmlkZW9IZWln
aHQoKSksIG1fcGFnZS0+ZGV2aWNlU2NhbGVGYWN0b3IoKSwgaW50ZXJmYWNlLT5mdWxsc2NyZWVu
TW9kZSgpLCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlLCBzdGFuZGJ5KSk7CiB9CiAKIHZvaWQgVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChX
ZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQpCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTI5NWU3YjYw
Mzk0YWFmNTY5OGI5NDNiOGRhMjAxM2FiYjk1Yzg3MC4uZGQ3NDExYWM0ODllODkwMjg5MzA5Mzc0
NmYyZDJiMzM2M2E2YTUyZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIwLTA2LTI5ICBQZW5n
IExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgVmlkZW8gc3BpbGxzIG92ZXIg
UGlQIHNjcmVlbiBhIGxpdHRsZSB3aGVuIHVzaW5nIFBpY3R1cmUgaW4gUGljdHVyZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjU4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgICogbWVkaWEvcGljdHVyZS1p
bi1waWN0dXJlL3BpY3R1cmUtaW4tcGljdHVyZS13aW5kb3ctYXNwZWN0LXJhdGlvLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvcGljdHVyZS1pbi1waWN0dXJlL3BpY3R1cmUt
aW4tcGljdHVyZS13aW5kb3ctYXNwZWN0LXJhdGlvLmh0bWw6IEFkZGVkLgorCiAyMDIwLTA2LTI0
ICBDbGFyayBXYW5nICA8Y2xhcmtfd2FuZ0BhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlZCB1
bnJlc3RyaWN0ZWQga2V5d29yZCBmcm9tIGF0dHJpYnV0ZXMgaW4gUGFubmVyTm9kZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvcGljdHVyZS1pbi1waWN0dXJlL3BpY3R1cmUtaW4tcGlj
dHVyZS13aW5kb3ctYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlh
L3BpY3R1cmUtaW4tcGljdHVyZS9waWN0dXJlLWluLXBpY3R1cmUtd2luZG93LWFzcGVjdC1yYXRp
by1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzcwM2Y2NGIyZjNmZDgxZmY2YTNmMTI2ZDM4ZDYy
YTE1ZDdiNGE2NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3BpY3R1cmUt
aW4tcGljdHVyZS9waWN0dXJlLWluLXBpY3R1cmUtd2luZG93LWFzcGVjdC1yYXRpby1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw5IEBACitUZXN0cyB0aGF0IGEgcGlwIHdpbmRvdyBoYXMgdGhlIHNh
bWUgYXNwZWN0IHJhdGlvIGFzIHRoZSB2aWRlbyBjb250ZW50LgorCitSVU4oaW50ZXJuYWxzLnNl
dHRpbmdzLnNldEFsbG93c1BpY3R1cmVJblBpY3R1cmVNZWRpYVBsYXliYWNrKHRydWUpKQorUlVO
KGludGVybmFscy5zZXRNb2NrVmlkZW9QcmVzZW50YXRpb25Nb2RlRW5hYmxlZCh0cnVlKSkKK1JV
Tih2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICIuLi9jb250ZW50L3Rlc3QiKSkK
K0VWRU5UKGNhbnBsYXl0aHJvdWdoKQorRVhQRUNURUQgKE1hdGguYWJzKHBpcFdpbmRvdy5oZWln
aHQgLyBwaXBXaW5kb3cud2lkdGggLSAyNDAgLyAzMjApIDwgJzAuMDEnKSBPSworRU5EIE9GIFRF
U1QKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvcGljdHVyZS1pbi1waWN0dXJlL3Bp
Y3R1cmUtaW4tcGljdHVyZS13aW5kb3ctYXNwZWN0LXJhdGlvLmh0bWwgYi9MYXlvdXRUZXN0cy9t
ZWRpYS9waWN0dXJlLWluLXBpY3R1cmUvcGljdHVyZS1pbi1waWN0dXJlLXdpbmRvdy1hc3BlY3Qt
cmF0aW8uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYTViNDI3OWVjMDU0MDI5MWM5Yjk4Y2NjODljYTRhNWJm
MmU3ODIyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvcGljdHVyZS1pbi1w
aWN0dXJlL3BpY3R1cmUtaW4tcGljdHVyZS13aW5kb3ctYXNwZWN0LXJhdGlvLmh0bWwKQEAgLTAs
MCArMSw0MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxzY3JpcHQg
c3JjPSIuLi92aWRlby10ZXN0LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vbWVk
aWEtZmlsZS5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgd2luZG93LmFkZEV2
ZW50TGlzdGVuZXIoJ2xvYWQnLCBhc3luYyBldmVudCA9PiB7CisgICAgICAgICAgICBpZiAoIXdp
bmRvdy5pbnRlcm5hbHMpIHsKKyAgICAgICAgICAgICAgICBmYWlsVGVzdCgnVGhpcyB0ZXN0IHJl
cXVpcmVzIHdpbmRvdy5pbnRlcm5hbHMuJyk7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CisKKyAgICAgICAg
ICAgIHJ1bignaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c1BpY3R1cmVJblBpY3R1cmVNZWRp
YVBsYXliYWNrKHRydWUpJyk7CisgICAgICAgICAgICBydW4oJ2ludGVybmFscy5zZXRNb2NrVmlk
ZW9QcmVzZW50YXRpb25Nb2RlRW5hYmxlZCh0cnVlKScpOworCisgICAgICAgICAgICBydW4oJ3Zp
ZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgIi4uL2NvbnRlbnQvdGVzdCIpJyk7Cisg
ICAgICAgICAgICBhd2FpdCB3YWl0Rm9yKHZpZGVvLCAnY2FucGxheXRocm91Z2gnKTsKKworICAg
ICAgICAgICAgcnVuV2l0aEtleURvd24oKCkgPT4geworICAgICAgICAgICAgICAgIHZpZGVvLnJl
cXVlc3RQaWN0dXJlSW5QaWN0dXJlKCkKKyAgICAgICAgICAgICAgICAudGhlbihwaXBXaW5kb3cg
PT4geworICAgICAgICAgICAgICAgICAgICB3aW5kb3cucGlwV2luZG93ID0gcGlwV2luZG93Owor
ICAgICAgICAgICAgICAgICAgICAvLyBDb21wYXJlIGZsb2F0aW5nIHBvaW50IG51bWJlcnMgd2l0
aCB0aGUgcHJlY2lzaW9uIDAuMDEKKyAgICAgICAgICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCdN
YXRoLmFicyhwaXBXaW5kb3cuaGVpZ2h0IC8gcGlwV2luZG93LndpZHRoIC0gMjQwIC8gMzIwKScs
IDAuMDEsICc8Jyk7CisKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhpdFBpY3R1cmVJ
blBpY3R1cmUoKS50aGVuKGVuZFRlc3QpLmNhdGNoKCgpID0+IHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGZhaWxUZXN0KCdGYWlsZWQgdG8gZXhpdCB0aGUgUGljdHVyZS1pbi1QaWN0dXJlIG1v
ZGUuJyk7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0pCisgICAg
ICAgICAgICAgICAgLmNhdGNoKGVycm9yID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZmFpbFRl
c3QoIkZhaWxlZCB0byBlbnRlciB0aGUgUGljdHVyZS1pbi1QaWN0dXJlIG1vZGUuIik7CisgICAg
ICAgICAgICAgICAgfSk7CisgICAgICAgICAgICB9KTsKKyAgICAgICAgfSk7CisgICAgPC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8ZGl2PlRlc3RzIHRoYXQgYSBwaXAgd2luZG93IGhh
cyB0aGUgc2FtZSBhc3BlY3QgcmF0aW8gYXMgdGhlIHZpZGVvIGNvbnRlbnQuPC9kaXY+CisgICAg
PHZpZGVvIGNvbnRyb2xzIHdpZHRoPSIyIiBoZWlnaHQ9IjIiPjwvdmlkZW8+Cis8L2JvZHk+Cis8
L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>