<?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>214120</bug_id>
          
          <creation_ts>2020-07-08 20:58:28 -0700</creation_ts>
          <short_desc>[iOS] Occasional crash under -[UIView _setViewDelegate:] when presenting date and time pickers</short_desc>
          <delta_ts>2020-07-09 08:15:35 -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>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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>aestes</cc>
    
    <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>hi</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1670007</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-07-08 20:58:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/65246918&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670012</commentid>
    <comment_count>1</comment_count>
      <attachid>403843</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-07-08 21:19:20 -0700</bug_when>
    <thetext>Created attachment 403843
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670016</commentid>
    <comment_count>2</comment_count>
      <attachid>403843</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-07-08 22:33:22 -0700</bug_when>
    <thetext>Comment on attachment 403843
Patch

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

&gt; Source/WebKit/ChangeLog:31
&gt; +        Make it possible to test date and time picker presentation and dismissal by calling into the private testing-

These testing hooks seem a little complicated in their own right. Wish there was a more straightforward pattern.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670102</commentid>
    <comment_count>3</comment_count>
      <attachid>403843</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-07-09 08:13:05 -0700</bug_when>
    <thetext>Comment on attachment 403843
Patch

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

&gt;&gt; Source/WebKit/ChangeLog:31
&gt;&gt; +        Make it possible to test date and time picker presentation and dismissal by calling into the private testing-
&gt; 
&gt; These testing hooks seem a little complicated in their own right. Wish there was a more straightforward pattern.

Yes! I think that ideally, we’d want to limit this kind of test-specific logic to the actual testing harness (WebKitTestRunner) as much as possible, but it’s tricky here because WKTR can’t really get at the context menu interaction or listen for its delegate methods.

Maybe a simpler, polling-based approach would be more maintainable in the long run...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670103</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-09 08:15:34 -0700</bug_when>
    <thetext>Committed r264170: &lt;https://trac.webkit.org/changeset/264170&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403843.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403843</attachid>
            <date>2020-07-08 21:19:20 -0700</date>
            <delta_ts>2020-07-09 08:15:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214120-20200708211919.patch</filename>
            <type>text/plain</type>
            <size>19213</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0MTE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE2ZTgyYzlkYmNhOTEzYzcx
Y2I4ZjU5YWI0ZWNlNDAzY2Y0MjQwMWYuLmQxNjdjMzAxZjFlNWQyYWM4ZWE4M2U1MzBjNzk2NGQw
YjgzMTJkNWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzggQEAKKzIwMjAtMDctMDggIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gT2NjYXNpb25h
bCBjcmFzaCB1bmRlciAtW1VJVmlldyBfc2V0Vmlld0RlbGVnYXRlOl0gd2hlbiBwcmVzZW50aW5n
IGRhdGUgYW5kIHRpbWUgcGlja2VycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE0MTIwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NTI0NjkxOD4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGNy
YXNoIGhhcHBlbnMgd2hlbiBhdHRlbXB0aW5nIHRvIHByZXNlbnQgYSBkYXRlIHBpY2tlciAoYDxp
bnB1dCB0eXBlPWRhdGU+YCkgaW1tZWRpYXRlbHkgYWZ0ZXIgZGlzbWlzc2luZworICAgICAgICBp
dC4gV2UgZW5jb3VudGVyIGFuIE9iamVjdGl2ZS1DIGV4Y2VwdGlvbiB0aHJvd24gYnkgVUlLaXQs
IGR1ZSB0byB0aGUgYFdLRGF0ZVRpbWVDb250ZXh0TWVudVZpZXdDb250cm9sbGVyYCdzCisgICAg
ICAgIHZpZXcgKHRoZSBgVUlEYXRlUGlja2VyYCkgYmVpbmcgcHJlc2VudGVkIHdoaWxlIGl0IGlz
IHN0aWxsIG93bmVkIGJ5IHRoZSBwcmV2aWV3IHZpZXcgY29udHJvbGxlci4gV2Ugb2Z0ZW4gYXZv
aWQKKyAgICAgICAgdGhpcyBjcmFzaCBiZWNhdXNlIHRoZSBgV0tEYXRlVGltZUNvbnRleHRNZW51
Vmlld0NvbnRyb2xsZXJgIGlzIHVzdWFsbHkgb25seSBvd25lZCBieSBgV0tEYXRlVGltZVBpY2tl
cmAsIHNvCisgICAgICAgIHdoZW4gd2Ugc2V0IGBfdmlld0NvbnRyb2xsZXJgIHRvIGEgbmV3IGlu
c3RhbmNlIG9mIGBXS0RhdGVUaW1lQ29udGV4dE1lbnVWaWV3Q29udHJvbGxlcmAsIHRoZSBvbGQg
dmlldworICAgICAgICBjb250cm9sbGVyIGlzIGRlc3Ryb3llZCwgYW5kIHRodXMgbm8gbG9uZ2Vy
IG93bnMgdGhlIGBVSURhdGVQaWNrZXJgIHZpZXcuCisKKyAgICAgICAgSG93ZXZlciwgaXQncyBw
b3NzaWJsZSBmb3IgYW55dGhpbmcgKGUuZy4gYW5pbWF0aW9uIGJsb2NrcyBpbiBVSUtpdCkgdG8g
Y2F1c2UgdGhlIG9sZCB2aWV3IGNvbnRyb2xsZXIgdG8gbGl2ZQorICAgICAgICBwYXN0IHRoZSBj
cmVhdGlvbiBvZiB0aGUgbmV3IHZpZXcgY29udHJvbGxlci4gSWYgdGhpcyBoYXBwZW5zLCB3aGVu
IHdlIGdvIGFuZCBjYWxsIGAtc2V0VmlldzpgIG9uIHRoZSBuZXcgdmlldworICAgICAgICBjb250
cm9sbGVyIHdpdGggdGhlIGRhdGUgcGlja2VyIHZpZXcsIHRoZSBkYXRlIHBpY2tlciB2aWV3IG1h
eSBzdGlsbCBiZSB0aGUgdmlldyBvZiB0aGUgb2xkIGNvbnRyb2xsZXIsIGFuZCB3ZQorICAgICAg
ICBlbmQgdXAgY3Jhc2hpbmcuCisKKyAgICAgICAgVG8gZml4IHRoaXMsIGV4cGxpY2l0bHkgdW5s
b2FkIHRoZSBvbGQgdmlldyBjb250cm9sbGVyJ3MgdmlldyBiZWZvcmUgYXR0ZW1wdGluZyB0byBj
cmVhdGUgdGhlIG5ldyB2aWV3CisgICAgICAgIGNvbnRyb2xsZXIuCisKKyAgICAgICAgVGVzdDog
ZmFzdC9mb3Jtcy9pb3Mvc2hvdy1hbmQtZGlzbWlzcy1kYXRlLWlucHV0Lmh0bWwKKworICAgICAg
ICAqIFVJUHJvY2Vzcy9pb3MvZm9ybXMvV0tEYXRlVGltZUlucHV0Q29udHJvbC5tbToKKyAgICAg
ICAgKC1bV0tEYXRlVGltZVBpY2tlciBjb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRp
b25Gb3JNZW51QXRMb2NhdGlvbjpdKToKKyAgICAgICAgKC1bV0tEYXRlVGltZVBpY2tlciBjb250
ZXh0TWVudUludGVyYWN0aW9uOndpbGxEaXNwbGF5TWVudUZvckNvbmZpZ3VyYXRpb246YW5pbWF0
b3I6XSk6CisgICAgICAgICgtW1dLRGF0ZVRpbWVQaWNrZXIgY29udGV4dE1lbnVJbnRlcmFjdGlv
bjp3aWxsRW5kRm9yQ29uZmlndXJhdGlvbjphbmltYXRvcjpdKToKKworICAgICAgICBNYWtlIGl0
IHBvc3NpYmxlIHRvIHRlc3QgZGF0ZSBhbmQgdGltZSBwaWNrZXIgcHJlc2VudGF0aW9uIGFuZCBk
aXNtaXNzYWwgYnkgY2FsbGluZyBpbnRvIHRoZSBwcml2YXRlIHRlc3RpbmctCisgICAgICAgIG9u
bHkgc3ViY2xhc3NpbmcgaG9va3Mgb24gYFdLV2ViVmlld2Agd2hlbiB3ZSBmaW5pc2ggcHJlc2Vu
dGluZyBhbmQgZGlzbWlzc2luZyB0aGUgZGF0ZSBwaWNrZXIgY29udGV4dCBtZW51LgorCisgICAg
ICAgICgtW1dLRGF0ZVRpbWVQaWNrZXIgcmVtb3ZlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl0pOgor
CiAyMDIwLTA3LTA4ICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwZS5jb20+CiAKICAgICAgICAg
TmV0d29yayBwcm9jZXNzIGNyYXNoZXMgaW4gV2ViS2l0OjpXZWJJREJTZXJ2ZXI6OnJlbW92ZUNv
bm5lY3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9mb3Jtcy9X
S0RhdGVUaW1lSW5wdXRDb250cm9sLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL2Zv
cm1zL1dLRGF0ZVRpbWVJbnB1dENvbnRyb2wubW0KaW5kZXggOWI1Njc4OTQyYjYzMzgyNjA3Njc3
NDQ0Mjk1YjkyNGQ1NGYxM2I1NS4uNmNiYzlmYjBkYmQzMDFlNTExYjYzNmUzYWM1NDFmYmRjZDgw
MjcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL2Zvcm1zL1dLRGF0
ZVRpbWVJbnB1dENvbnRyb2wubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL2Zv
cm1zL1dLRGF0ZVRpbWVJbnB1dENvbnRyb2wubW0KQEAgLTMxLDYgKzMxLDcgQEAKICNpbXBvcnQg
IlVzZXJJbnRlcmZhY2VJZGlvbS5oIgogI2ltcG9ydCAiV0tDb250ZW50Vmlldy5oIgogI2ltcG9y
dCAiV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgiCisjaW1wb3J0ICJXS1dlYlZpZXdQcml2YXRl
Rm9yVGVzdGluZy5oIgogI2ltcG9ydCAiV2ViUGFnZVByb3h5LmgiCiAjaW1wb3J0IDxVSUtpdC9V
SUJhckJ1dHRvbkl0ZW0uaD4KICNpbXBvcnQgPFVJS2l0L1VJRGF0ZVBpY2tlci5oPgpAQCAtMTY0
LDcgKzE2NSw3IEBAIC0gKF9VSUNvbnRleHRNZW51U3R5bGUgKilfY29udGV4dE1lbnVJbnRlcmFj
dGlvbjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50CiAtIChVSUNvbnRleHRNZW51Q29u
ZmlndXJhdGlvbiAqKWNvbnRleHRNZW51SW50ZXJhY3Rpb246KFVJQ29udGV4dE1lbnVJbnRlcmFj
dGlvbiAqKWludGVyYWN0aW9uIGNvbmZpZ3VyYXRpb25Gb3JNZW51QXRMb2NhdGlvbjooQ0dQb2lu
dClsb2NhdGlvbgogewogICAgIHJldHVybiBbVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24gY29u
ZmlndXJhdGlvbldpdGhJZGVudGlmaWVyOkAiX1VJRGF0ZVBpY2tlckNvbXBhY3RFZGl0b3IiIHBy
ZXZpZXdQcm92aWRlcjpeewotCisgICAgICAgIFtfdmlld0NvbnRyb2xsZXIgc2V0VmlldzpuaWxd
OwogICAgICAgICBfdmlld0NvbnRyb2xsZXIgPSBhZG9wdE5TKFtbV0tEYXRlVGltZUNvbnRleHRN
ZW51Vmlld0NvbnRyb2xsZXIgYWxsb2NdIGluaXRdKTsKICAgICAgICAgUmV0YWluUHRyPFVJTmF2
aWdhdGlvbkNvbnRyb2xsZXI+IG5hdmlnYXRpb25Db250cm9sbGVyID0gYWRvcHROUyhbW1VJTmF2
aWdhdGlvbkNvbnRyb2xsZXIgYWxsb2NdIGluaXRXaXRoUm9vdFZpZXdDb250cm9sbGVyOl92aWV3
Q29udHJvbGxlci5nZXQoKV0pOwogICAgICAgICBOU1N0cmluZyAqcmVzZXRTdHJpbmcgPSBXRUJf
VUlfU1RSSU5HX0tFWSgiUmVzZXQiLCAiUmVzZXQgQnV0dG9uIERhdGUvVGltZSBDb250ZXh0IE1l
bnUiLCAiUmVzZXQgYnV0dG9uIGluIGRhdGUgaW5wdXQgY29udGV4dCBtZW51Iik7CkBAIC0xOTcs
MTAgKzE5OCwyMCBAQCAtIChVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbnRleHRNZW51
SW50ZXJhY3Rpb246KFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbgogICAgIH0gYWN0aW9uUHJvdmlk
ZXI6bmlsXTsKIH0KIAotLSAodm9pZCljb250ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRN
ZW51SW50ZXJhY3Rpb24gKilpbnRlcmFjdGlvbiB3aWxsRW5kRm9yQ29uZmlndXJhdGlvbjooVUlD
b250ZXh0TWVudUNvbmZpZ3VyYXRpb24gKiljb25maWd1cmF0aW9uIGFuaW1hdG9yOihpZDxVSUNv
bnRleHRNZW51SW50ZXJhY3Rpb25BbmltYXRpbmc+KWFuaW1hdG9yCistICh2b2lkKWNvbnRleHRN
ZW51SW50ZXJhY3Rpb246KFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbiAqKWludGVyYWN0aW9uIHdp
bGxEaXNwbGF5TWVudUZvckNvbmZpZ3VyYXRpb246KFVJQ29udGV4dE1lbnVDb25maWd1cmF0aW9u
ICopY29uZmlndXJhdGlvbiBhbmltYXRvcjooaWQgPFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbkFu
aW1hdGluZz4pYW5pbWF0b3IKK3sKKyAgICBbYW5pbWF0b3IgYWRkQ29tcGxldGlvbjpbd2Vha1Nl
bGYgPSBXZWFrT2JqQ1B0cjxXS0RhdGVUaW1lUGlja2VyPihzZWxmKV0geworICAgICAgICBhdXRv
IHN0cm9uZ1NlbGYgPSB3ZWFrU2VsZi5nZXQoKTsKKyAgICAgICAgW3N0cm9uZ1NlbGYtPl92aWV3
LndlYlZpZXcgX2RpZFNob3dDb250ZXh0TWVudV07CisgICAgfV07Cit9CisKKy0gKHZvaWQpY29u
dGV4dE1lbnVJbnRlcmFjdGlvbjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50ZXJhY3Rp
b24gd2lsbEVuZEZvckNvbmZpZ3VyYXRpb246KFVJQ29udGV4dE1lbnVDb25maWd1cmF0aW9uICop
Y29uZmlndXJhdGlvbiBhbmltYXRvcjooaWQgPFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbkFuaW1h
dGluZz4pYW5pbWF0b3IKIHsKLSAgICBbYW5pbWF0b3IgYWRkQ29tcGxldGlvbjpeewotICAgICAg
ICBbX3ZpZXcgYWNjZXNzb3J5RG9uZV07CisgICAgW2FuaW1hdG9yIGFkZENvbXBsZXRpb246W3dl
YWtTZWxmID0gV2Vha09iakNQdHI8V0tEYXRlVGltZVBpY2tlcj4oc2VsZildIHsKKyAgICAgICAg
YXV0byBzdHJvbmdTZWxmID0gd2Vha1NlbGYuZ2V0KCk7CisgICAgICAgIFtzdHJvbmdTZWxmLT5f
dmlldyBhY2Nlc3NvcnlEb25lXTsKKyAgICAgICAgW3N0cm9uZ1NlbGYtPl92aWV3LndlYlZpZXcg
X2RpZERpc21pc3NDb250ZXh0TWVudV07CiAgICAgfV07CiB9CiAKQEAgLTIxMCw2ICsyMjEsNyBA
QCAtICh2b2lkKXJlbW92ZUNvbnRleHRNZW51SW50ZXJhY3Rpb24KICAgICAgICAgW192aWV3IHJl
bW92ZUludGVyYWN0aW9uOl9kYXRlVGltZUNvbnRleHRNZW51SW50ZXJhY3Rpb24uZ2V0KCldOwog
ICAgICAgICBfZGF0ZVRpbWVDb250ZXh0TWVudUludGVyYWN0aW9uID0gbmlsOwogICAgICAgICBb
X3ZpZXcgX3JlbW92ZUNvbnRleHRNZW51Vmlld0lmUG9zc2libGVdOworICAgICAgICBbX3ZpZXcu
d2ViVmlldyBfZGlkRGlzbWlzc0NvbnRleHRNZW51XTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBh
L1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4MzNiYjA3MjVmZGFiYzM0
Y2M0ZDc1MTY3OWI3NjlhMTZiZWU1NWY1Li40ZWJiZjEwMGQwMTc2YTQ5NzkxMTE2YTU0ZTU2NjBk
ZmM5YmY4MmZmIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMjAtMDctMDggIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9o
c2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gT2NjYXNpb25hbCBjcmFzaCB1bmRlciAt
W1VJVmlldyBfc2V0Vmlld0RlbGVnYXRlOl0gd2hlbiBwcmVzZW50aW5nIGRhdGUgYW5kIHRpbWUg
cGlja2VycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjE0MTIwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NTI0NjkxOD4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnQgYWRkaXRpb25hbCBz
dXBwb3J0IGZvciB0ZXN0aW5nIGRhdGUgYW5kIHRpbWUgcGlja2VycyBwcmVzZW50ZWQgdXNpbmcg
Y29udGV4dCBtZW51cyBvbiBpT1MgMTQuIAorCisgICAgICAgICogVGVzdFJ1bm5lclNoYXJlZC9V
SVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlTY3JpcHRDb250cm9sbGVyLmlkbDoKKyAgICAgICAg
KiBUZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaDoK
KyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjppc1Nob3dpbmdDb250ZXh0TWVudSBj
b25zdCk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9UZXN0UnVubmVyV0tXZWJW
aWV3Lmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9UZXN0UnVubmVyV0tXZWJW
aWV3Lm1tOgorICAgICAgICAoLVtUZXN0UnVubmVyV0tXZWJWaWV3IF9kaWRTaG93Q29udGV4dE1l
bnVdKToKKyAgICAgICAgKC1bVGVzdFJ1bm5lcldLV2ViVmlldyBfZGlkRGlzbWlzc0NvbnRleHRN
ZW51XSk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVy
SU9TLmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVy
SU9TLm1tOgorICAgICAgICAoV1RSOjpVSVNjcmlwdENvbnRyb2xsZXJJT1M6OnNldERpZERpc21p
c3NDb250ZXh0TWVudUNhbGxiYWNrKToKKworICAgICAgICBDYWxsIHRoZSBjb21wbGV0aW9uIGNh
bGxiYWNrIHdpdGggYENhbGxiYWNrVHlwZURpZERpc21pc3NDb250ZXh0TWVudWAsIHJhdGhlciB0
aGFuCisgICAgICAgIGBDYWxsYmFja1R5cGVEaWRFbmRGb3JtQ29udHJvbEludGVyYWN0aW9uYC4K
KworICAgICAgICAoV1RSOjpVSVNjcmlwdENvbnRyb2xsZXJJT1M6OmlzU2hvd2luZ0NvbnRleHRN
ZW51IGNvbnN0KToKKworICAgICAgICBBZGQgYSBuZXcgc2NyaXB0IGNvbnRyb2xsZXIgdG8gYXNr
IHdoZXRoZXIgd2UncmUgY3VycmVudGx5IHByZXNlbnRpbmcgYSBjb250ZXh0IG1lbnUuIFRoaXMg
aXMgdXNlZnVsIGluIHRoZSBjYXNlCisgICAgICAgIHdoZXJlIHdlIHdhbnQgdG8gd2FpdCB1bnRp
bCB3ZSdyZSBubyBsb25nZXIgc2hvd2luZyBhIGNvbnRleHQgbWVudSwgc2luY2Ugd2UnbGwgZWl0
aGVyIGltbWVkaWF0ZWx5IGludm9rZSBzY3JpcHQKKyAgICAgICAgY29tcGxldGlvbiwgb3Igc3Rh
c2ggYSBjb21wbGV0aW9uIGNhbGxiYWNrIG9uIGBkaWREaXNtaXNzQ29udGV4dE1lbnVDYWxsYmFj
a2AgdG8gaW52b2tlIHNjcmlwdCBjb21wbGV0aW9uIGFmdGVyCisgICAgICAgIHRoZSBjb250ZXh0
IG1lbnUgaXMgZmluaXNoZWQgZGlzbWlzc2luZy4KKwogMjAyMC0wNy0wOCAgQW5keSBFc3RlcyAg
PGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjIwNzU1OCk6IFtNYWNd
IENvbnRleHQgY2xpY2tzIG9uIGxpbmtzIHNvbWV0aW1lcyByZXN1bHQgaW4gbmF2aWdhdGlvbnMK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L0JpbmRp
bmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwgYi9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2Ny
aXB0Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRsCmluZGV4IDlmZDY3ZmQ2
NDI4OGUxOWJhYWEyOTg4ZGYyZTQ1YjQzMWViNGM4YTguLjJhMzhjNmFmNjhhZGQzYzdkOWIzYzE3
MjRkZjczMjZkNzFjNjc0NDAgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlT
Y3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwKKysrIGIvVG9vbHMv
VGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlTY3JpcHRDb250cm9s
bGVyLmlkbApAQCAtMjEwLDYgKzIxMCw4IEBAIGludGVyZmFjZSBVSVNjcmlwdENvbnRyb2xsZXIg
ewogICAgIGF0dHJpYnV0ZSBvYmplY3QgZGlkU2hvd0NvbnRleHRNZW51Q2FsbGJhY2s7CiAgICAg
YXR0cmlidXRlIG9iamVjdCBkaWREaXNtaXNzQ29udGV4dE1lbnVDYWxsYmFjazsKIAorICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzU2hvd2luZ0NvbnRleHRNZW51OworCiAgICAgLy8g
PHNlbGVjdD4gcGlja2VyCiAgICAgdm9pZCBzZWxlY3RGb3JtQWNjZXNzb3J5UGlja2VyUm93KGxv
bmcgcm93SW5kZXgpOwogICAgIGJvb2xlYW4gc2VsZWN0Rm9ybUFjY2Vzc29yeUhhc0NoZWNrZWRJ
dGVtQXRSb3cobG9uZyByb3dJbmRleCk7CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0UnVubmVyU2hh
cmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaCBiL1Rvb2xzL1Rlc3RSdW5u
ZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxlci5oCmluZGV4IDlmYWE2
ZDYxYzRlMDU4ZTU0ZDMwYjE2NGZlN2FmYTE4MGU3ZWZhOWUuLmQ1NjJiYWIwYWMyNzhlY2YxOTU2
YTRkYmVkMDVkYTgwOTIwYmI0NWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQv
VUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxlci5oCisrKyBiL1Rvb2xzL1Rlc3RSdW5u
ZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxlci5oCkBAIC0yNTMsNiAr
MjUzLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBpc1Nob3dpbmdNZW51KCkgY29uc3Qg
eyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIEpTT2JqZWN0
UmVmIHJlY3RGb3JNZW51QWN0aW9uKEpTU3RyaW5nUmVmIGFjdGlvbikgY29uc3QgeyBub3RJbXBs
ZW1lbnRlZCgpOyByZXR1cm4gbnVsbHB0cjsgfQogICAgIHZpcnR1YWwgSlNPYmplY3RSZWYgbWVu
dVJlY3QoKSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBudWxscHRyOyB9CisgICAg
dmlydHVhbCBib29sIGlzU2hvd2luZ0NvbnRleHRNZW51KCkgY29uc3QgeyBub3RJbXBsZW1lbnRl
ZCgpOyByZXR1cm4gZmFsc2U7IH0KIAogICAgIC8vIFNlbGVjdGlvbgogCmRpZmYgLS1naXQgYS9U
b29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1Rlc3RSdW5uZXJXS1dlYlZpZXcuaCBiL1Rvb2xz
L1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVGVzdFJ1bm5lcldLV2ViVmlldy5oCmluZGV4IGVlZmY1
ZTRiNmI4ZmRiZWQwYWZmMzZhOThkMDA3ZjMyZDFiYzRjNmMuLjQ4YzI1MWE5NzhmODY3N2U3YTMy
N2Y1NzM5YzZmZjYzOWFlNGUzNTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
Y29jb2EvVGVzdFJ1bm5lcldLV2ViVmlldy5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
Y29jb2EvVGVzdFJ1bm5lcldLV2ViVmlldy5oCkBAIC02Miw2ICs2Miw3IEBACiBAcHJvcGVydHkg
KG5vbmF0b21pYywgcmVhZG9ubHksIGdldHRlcj1pc1Nob3dpbmdLZXlib2FyZCkgQk9PTCBzaG93
aW5nS2V5Ym9hcmQ7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGdldHRlcj1pc0Rp
c21pc3NpbmdNZW51KSBCT09MIGRpc21pc3NpbmdNZW51OwogQHByb3BlcnR5IChub25hdG9taWMs
IHJlYWRvbmx5LCBnZXR0ZXI9aXNTaG93aW5nUG9wb3ZlcikgQk9PTCBzaG93aW5nUG9wb3ZlcjsK
K0Bwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgZ2V0dGVyPWlzU2hvd2luZ0NvbnRleHRN
ZW51KSBCT09MIHNob3dpbmdDb250ZXh0TWVudTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBhc3Np
Z24pIEJPT0wgdXNlc1NhZmFyaUxpa2VSb3RhdGlvbjsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBy
ZWFkb25seSwgZ2V0dGVyPWlzSW50ZXJhY3RpbmdXaXRoRm9ybUNvbnRyb2wpIEJPT0wgaW50ZXJh
Y3RpbmdXaXRoRm9ybUNvbnRyb2w7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvY29jb2EvVGVzdFJ1bm5lcldLV2ViVmlldy5tbSBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
Y29jb2EvVGVzdFJ1bm5lcldLV2ViVmlldy5tbQppbmRleCAxZmU1NGIzOTM2ZDAyMDY1OTgyNzRh
ZTE4NmFlNzRmMWQ3ZTllNGVkLi5jYWVjZjcwMzdjMjI5ODljMjZiNTIyZDRlMjYwZDliMGEwYzBh
MGYzIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1Rlc3RSdW5uZXJX
S1dlYlZpZXcubW0KKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9UZXN0UnVubmVy
V0tXZWJWaWV3Lm1tCkBAIC03Nyw2ICs3Nyw3IEBAIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBnZXR0
ZXI9aXNTaG93aW5nS2V5Ym9hcmQsIHNldHRlcj1zZXRJc1Nob3dpbmdLZXlib2FyZDopIEJPCiBA
cHJvcGVydHkgKG5vbmF0b21pYywgZ2V0dGVyPWlzU2hvd2luZ01lbnUsIHNldHRlcj1zZXRJc1No
b3dpbmdNZW51OikgQk9PTCBzaG93aW5nTWVudTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBnZXR0
ZXI9aXNEaXNtaXNzaW5nTWVudSwgc2V0dGVyPXNldElzRGlzbWlzc2luZ01lbnU6KSBCT09MIGRp
c21pc3NpbmdNZW51OwogQHByb3BlcnR5IChub25hdG9taWMsIGdldHRlcj1pc1Nob3dpbmdQb3Bv
dmVyLCBzZXR0ZXI9c2V0SXNTaG93aW5nUG9wb3ZlcjopIEJPT0wgc2hvd2luZ1BvcG92ZXI7CitA
cHJvcGVydHkgKG5vbmF0b21pYywgZ2V0dGVyPWlzU2hvd2luZ0NvbnRleHRNZW51LCBzZXR0ZXI9
c2V0SXNTaG93aW5nQ29udGV4dE1lbnU6KSBCT09MIHNob3dpbmdDb250ZXh0TWVudTsKIAogQGVu
ZAogCkBAIC0yMTcsMTIgKzIxOCwyMCBAQCAtIChCT09MKWlzSW50ZXJhY3RpbmdXaXRoRm9ybUNv
bnRyb2wKIAogLSAodm9pZClfZGlkU2hvd0NvbnRleHRNZW51CiB7CisgICAgaWYgKHNlbGYuc2hv
d2luZ0NvbnRleHRNZW51KQorICAgICAgICByZXR1cm47CisKKyAgICBzZWxmLnNob3dpbmdDb250
ZXh0TWVudSA9IFlFUzsKICAgICBpZiAoc2VsZi5kaWRTaG93Q29udGV4dE1lbnVDYWxsYmFjaykK
ICAgICAgICAgc2VsZi5kaWRTaG93Q29udGV4dE1lbnVDYWxsYmFjaygpOwogfQogCiAtICh2b2lk
KV9kaWREaXNtaXNzQ29udGV4dE1lbnUKIHsKKyAgICBpZiAoIXNlbGYuc2hvd2luZ0NvbnRleHRN
ZW51KQorICAgICAgICByZXR1cm47CisKKyAgICBzZWxmLnNob3dpbmdDb250ZXh0TWVudSA9IE5P
OwogICAgIGlmIChzZWxmLmRpZERpc21pc3NDb250ZXh0TWVudUNhbGxiYWNrKQogICAgICAgICBz
ZWxmLmRpZERpc21pc3NDb250ZXh0TWVudUNhbGxiYWNrKCk7CiB9CmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL2lvcy9VSVNjcmlwdENvbnRyb2xsZXJJT1MuaCBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvaW9zL1VJU2NyaXB0Q29udHJvbGxlcklPUy5oCmluZGV4IGU4ODlhYTJl
MjZlMWExZTA5MGE1MzRiNzAzOTA5NzdiNjYwMDIzYjkuLmY0YjJiODBmNGE3N2RlOTUyNzIwNzk4
OWJmYThkNzNmNzE5MDRjZDkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9z
L1VJU2NyaXB0Q29udHJvbGxlcklPUy5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9z
L1VJU2NyaXB0Q29udHJvbGxlcklPUy5oCkBAIC0xNDUsNiArMTQ1LDcgQEAgcHVibGljOgogICAg
IHZvaWQgc2V0QWxsb3dzVmlld3BvcnRTaHJpbmtUb0ZpdChib29sKSBvdmVycmlkZTsKICAgICB2
b2lkIGNvcHlUZXh0KEpTU3RyaW5nUmVmKSBvdmVycmlkZTsKICAgICB2b2lkIGluc3RhbGxUYXBH
ZXN0dXJlT25XaW5kb3coSlNWYWx1ZVJlZikgb3ZlcnJpZGU7CisgICAgYm9vbCBpc1Nob3dpbmdD
b250ZXh0TWVudSgpIGNvbnN0IG92ZXJyaWRlOwogCiAgICAgYm9vbCBtYXlDb250YWluRWRpdGFi
bGVFbGVtZW50c0luUmVjdCh1bnNpZ25lZCB4LCB1bnNpZ25lZCB5LCB1bnNpZ25lZCB3aWR0aCwg
dW5zaWduZWQgaGVpZ2h0KSBvdmVycmlkZTsKIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLm1tCmluZGV4IDJhYmE1MDdlN2MxNGEzYjYw
Y2IwMzg1MTI0NDBlNmViZGM2YjA0ZDMuLjdmYWVlNjQ0NWE3MGJlYTAxY2U0NDEyM2I3NzE2ODgz
MDYwMmQzYjYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1VJU2NyaXB0
Q29udHJvbGxlcklPUy5tbQorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9VSVNjcmlw
dENvbnRyb2xsZXJJT1MubW0KQEAgLTk0NCw3ICs5NDQsNyBAQCB2b2lkIFVJU2NyaXB0Q29udHJv
bGxlcklPUzo6c2V0RGlkRGlzbWlzc0NvbnRleHRNZW51Q2FsbGJhY2soSlNWYWx1ZVJlZiBjYWxs
YmFjawogICAgIHdlYlZpZXcoKS5kaWREaXNtaXNzQ29udGV4dE1lbnVDYWxsYmFjayA9IG1ha2VC
bG9ja1B0cihbdGhpcywgc3Ryb25nVGhpcyA9IG1ha2VSZWYoKnRoaXMpXSB7CiAgICAgICAgIGlm
ICghbV9jb250ZXh0KQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBtX2NvbnRleHQtPmZp
cmVDYWxsYmFjayhDYWxsYmFja1R5cGVEaWRFbmRGb3JtQ29udHJvbEludGVyYWN0aW9uKTsKKyAg
ICAgICAgbV9jb250ZXh0LT5maXJlQ2FsbGJhY2soQ2FsbGJhY2tUeXBlRGlkRGlzbWlzc0NvbnRl
eHRNZW51KTsKICAgICB9KS5nZXQoKTsKIH0KIApAQCAtMTI5OSw2ICsxMjk5LDExIEBAIHZvaWQg
VUlTY3JpcHRDb250cm9sbGVySU9TOjppbnN0YWxsVGFwR2VzdHVyZU9uV2luZG93KEpTVmFsdWVS
ZWYgY2FsbGJhY2spCiAgICAgfSkuZ2V0KCk7CiB9CiAKK2Jvb2wgVUlTY3JpcHRDb250cm9sbGVy
SU9TOjppc1Nob3dpbmdDb250ZXh0TWVudSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIHdlYlZpZXco
KS5zaG93aW5nQ29udGV4dE1lbnU7Cit9CisKIH0KIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPU19G
QU1JTFkpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggNzI3M2E5MzA3MWExZGM4MmZmOTgyODdiNTE3OWYxM2VjZjI0MDA2Yi4u
OTMwZjQxMDFiODk3MjA0NzE0MGMwM2ZhZmMyMDgzZjhiYTY5NTdkNiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDMxIEBACisyMDIwLTA3LTA4ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29t
PgorCisgICAgICAgIFtpT1NdIE9jY2FzaW9uYWwgY3Jhc2ggdW5kZXIgLVtVSVZpZXcgX3NldFZp
ZXdEZWxlZ2F0ZTpdIHdoZW4gcHJlc2VudGluZyBkYXRlIGFuZCB0aW1lIHBpY2tlcnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDEyMAorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNjUyNDY5MTg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IGxheW91dCB0ZXN0IHRvIHZlcmlmeSB0aGF0
IHByZXNlbnRpbmcgYSBkYXRlIHBpY2tlciB0d2ljZSBkb2VzIG5vdCByZXN1bHQgaW4gYSBjcmFz
aC4KKworICAgICAgICAqIGZhc3QvZm9ybXMvaW9zL3Nob3ctYW5kLWRpc21pc3MtZGF0ZS1pbnB1
dC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZm9ybXMvaW9zL3Nob3ctYW5k
LWRpc21pc3MtZGF0ZS1pbnB1dC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiByZXNvdXJjZXMvdWkt
aGVscGVyLmpzOgorICAgICAgICAod2luZG93LlVJSGVscGVyLmFjdGl2YXRlQW5kV2FpdEZvcklu
cHV0U2Vzc2lvbkF0LnJldHVybi5uZXcuUHJvbWlzZS4pOgorCisgICAgICAgIFRlYWNoIHRoaXMg
aGVscGVyIG1ldGhvZCB0byB3YWl0IGZvciBjb250ZXh0IG1lbnVzIGFzIHdlbGwgKGZvciB0aGUg
Y2FzZSBvZiBkYXRlIGFuZCB0aW1lIHBpY2tlcnMgb24gaU9TKS4KKworICAgICAgICAod2luZG93
LlVJSGVscGVyLndhaXRGb3JJbnB1dFNlc3Npb25Ub0Rpc21pc3MucmV0dXJuLm5ldy5Qcm9taXNl
Lik6CisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIud2FpdEZvcklucHV0U2Vzc2lvblRvRGlzbWlz
cy5yZXR1cm4ubmV3LlByb21pc2UpOgorICAgICAgICAod2luZG93LlVJSGVscGVyLndhaXRGb3JJ
bnB1dFNlc3Npb25Ub0Rpc21pc3MpOgorCisgICAgICAgIExpa2V3aXNlLCB0ZWFjaCB0aGlzIHRv
IHdhaXQgZm9yIGNvbnRleHQgbWVudSBkaXNtaXNzYWwuCisKKyAgICAgICAgKHdpbmRvdy5VSUhl
bHBlci53YWl0Rm9yQ29udGV4dE1lbnVUb0hpZGUucmV0dXJuLm5ldy5Qcm9taXNlKToKKyAgICAg
ICAgKHdpbmRvdy5VSUhlbHBlci53YWl0Rm9yQ29udGV4dE1lbnVUb0hpZGUpOgorCisgICAgICAg
IEFkZCBhIG5ldyBoZWxwZXIgdG8gd2FpdCBmb3IgY29udGV4dCBtZW51cyB0byBoaWRlLgorCiAy
MDIwLTA3LTA4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUmVz
eW5jIGFsbCByZW1haW5pbmcgd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwgdGVzdHMgZnJvbSB1cHN0
cmVhbQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pb3Mvc2hvdy1hbmQtZGlz
bWlzcy1kYXRlLWlucHV0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9z
L3Nob3ctYW5kLWRpc21pc3MtZGF0ZS1pbnB1dC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjhl
MTkzNzNjNjVjYzQ1MTEzNDY2ZGI1NjlkZGI4Mjg0NDk0ZDg3NwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9zL3Nob3ctYW5kLWRpc21pc3MtZGF0ZS1pbnB1dC1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorVGVzdHMgdGhhdCByZXBlYXRlZGx5IHNob3dp
bmcgYW5kIGRpc21pc3NpbmcgYSBkYXRlIHBpY2tlciBvbiBpT1MgZG9lcyBub3QgcmVzdWx0IGlu
IGEgY3Jhc2guCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIFByZXNlbnRl
ZCBhbmQgZGlzbWlzc2VkIGRhdGUgcGlja2VyICgxLzIpCitQQVNTIFByZXNlbnRlZCBhbmQgZGlz
bWlzc2VkIGRhdGUgcGlja2VyICgyLzIpCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9p
b3Mvc2hvdy1hbmQtZGlzbWlzcy1kYXRlLWlucHV0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zv
cm1zL2lvcy9zaG93LWFuZC1kaXNtaXNzLWRhdGUtaW5wdXQuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZGIx
MjFjMmU4Y2NmNzQyNjAwMDZmM2RhNDYwZTAyZDM1OTZmYTQwCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pb3Mvc2hvdy1hbmQtZGlzbWlzcy1kYXRlLWlucHV0Lmh0
bWwKQEAgLTAsMCArMSwzMSBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVu
bmVyIFsgdXNlRmxleGlibGVWaWV3cG9ydD10cnVlIF0gLS0+Cis8aHRtbD4KKzxtZXRhIG5hbWU9
InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+
Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxpbnB1dCB0eXBlPSJkYXRlIiB2YWx1ZT0iMTk3Ni0w
NC0wMSI+Cis8c2NyaXB0PgoranNUZXN0SXNBc3luYyA9IHRydWU7CitzZXRUaW1lb3V0KGZpbmlz
aEpTVGVzdCwgNTAwMCkKKworZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgcmVwZWF0ZWRseSBzaG93
aW5nIGFuZCBkaXNtaXNzaW5nIGEgZGF0ZSBwaWNrZXIgb24gaU9TIGRvZXMgbm90IHJlc3VsdCBp
biBhIGNyYXNoLiIpOworYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+IHsKKyAg
ICBpZiAoIXdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICByZXR1cm47CisKKyAgICBjb25zdCBp
bnB1dCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0Iik7CisgICAgY29uc3QgbnVtYmVy
T2ZJdGVyYXRpb25zID0gMjsKKyAgICBmb3IgKGxldCBpID0gMTsgaSA8PSBudW1iZXJPZkl0ZXJh
dGlvbnM7ICsraSkgeworICAgICAgICBhd2FpdCBVSUhlbHBlci5hY3RpdmF0ZUVsZW1lbnRBbmRX
YWl0Rm9ySW5wdXRTZXNzaW9uKGlucHV0KTsKKyAgICAgICAgYXdhaXQgVUlIZWxwZXIuYWN0aXZh
dGVBdCgxLCAxKTsKKyAgICAgICAgYXdhaXQgVUlIZWxwZXIud2FpdEZvckNvbnRleHRNZW51VG9I
aWRlKCk7CisgICAgICAgIHRlc3RQYXNzZWQoYFByZXNlbnRlZCBhbmQgZGlzbWlzc2VkIGRhdGUg
cGlja2VyICgke2l9LyR7bnVtYmVyT2ZJdGVyYXRpb25zfSlgKTsKKyAgICB9CisgICAgZmluaXNo
SlNUZXN0KCk7Cit9KTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Jlc291cmNlcy91aS1oZWxw
ZXIuanMgYi9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvdWktaGVscGVyLmpzCmluZGV4IDdkNjBmN2Ri
YjU2ZjIyNDc4MGFmZDBjYTRjMWQ4ZTQzMjNkZDQ4MjMuLjFmNWVmYWJkYzM2MWI2ZWY5ODQ1OGNh
NmM4ZTdhNTc5ZjYyNzRkODMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3Jlc291cmNlcy91aS1o
ZWxwZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvcmVzb3VyY2VzL3VpLWhlbHBlci5qcwpAQCAtNDQ4
LDEwICs0NDgsMTIgQEAgd2luZG93LlVJSGVscGVyID0gY2xhc3MgVUlIZWxwZXIgewogICAgICAg
ICAgICAgdGVzdFJ1bm5lci5ydW5VSVNjcmlwdChgCiAgICAgICAgICAgICAgICAgKGZ1bmN0aW9u
KCkgewogICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBjbGVhckNhbGxiYWNrc0FuZFNjcmlw
dENvbXBsZXRlKCkgeworICAgICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZFNo
b3dDb250ZXh0TWVudUNhbGxiYWNrID0gbnVsbDsKICAgICAgICAgICAgICAgICAgICAgICAgIHVp
Q29udHJvbGxlci5kaWRTaG93S2V5Ym9hcmRDYWxsYmFjayA9IG51bGw7CiAgICAgICAgICAgICAg
ICAgICAgICAgICB1aUNvbnRyb2xsZXIud2lsbFByZXNlbnRQb3BvdmVyQ2FsbGJhY2sgPSBudWxs
OwogICAgICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUo
KTsKICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICB1aUNvbnRyb2xs
ZXIuZGlkU2hvd0NvbnRleHRNZW51Q2FsbGJhY2sgPSBjbGVhckNhbGxiYWNrc0FuZFNjcmlwdENv
bXBsZXRlOwogICAgICAgICAgICAgICAgICAgICB1aUNvbnRyb2xsZXIuZGlkU2hvd0tleWJvYXJk
Q2FsbGJhY2sgPSBjbGVhckNhbGxiYWNrc0FuZFNjcmlwdENvbXBsZXRlOwogICAgICAgICAgICAg
ICAgICAgICB1aUNvbnRyb2xsZXIud2lsbFByZXNlbnRQb3BvdmVyQ2FsbGJhY2sgPSBjbGVhckNh
bGxiYWNrc0FuZFNjcmlwdENvbXBsZXRlOwogICAgICAgICAgICAgICAgICAgICB1aUNvbnRyb2xs
ZXIuc2luZ2xlVGFwQXRQb2ludCgke3h9LCAke3l9LCBmdW5jdGlvbigpIHsgfSk7CkBAIC00Njcs
MTAgKzQ2OSwxMiBAQCB3aW5kb3cuVUlIZWxwZXIgPSBjbGFzcyBVSUhlbHBlciB7CiAgICAgICAg
ICAgICAgICAgICAgIGZ1bmN0aW9uIGNsZWFyQ2FsbGJhY2tzQW5kU2NyaXB0Q29tcGxldGUoKSB7
CiAgICAgICAgICAgICAgICAgICAgICAgICB1aUNvbnRyb2xsZXIuZGlkSGlkZUtleWJvYXJkQ2Fs
bGJhY2sgPSBudWxsOwogICAgICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZERp
c21pc3NQb3BvdmVyQ2FsbGJhY2sgPSBudWxsOworICAgICAgICAgICAgICAgICAgICAgICAgdWlD
b250cm9sbGVyLmRpZEhpZGVDb250ZXh0TWVudUNhbGxiYWNrID0gbnVsbDsKICAgICAgICAgICAg
ICAgICAgICAgICAgIHVpQ29udHJvbGxlci51aVNjcmlwdENvbXBsZXRlKCk7CiAgICAgICAgICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZEhpZGVLZXli
b2FyZENhbGxiYWNrID0gY2xlYXJDYWxsYmFja3NBbmRTY3JpcHRDb21wbGV0ZTsKICAgICAgICAg
ICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZERpc21pc3NQb3BvdmVyQ2FsbGJhY2sgPSBjbGVh
ckNhbGxiYWNrc0FuZFNjcmlwdENvbXBsZXRlOworICAgICAgICAgICAgICAgICAgICB1aUNvbnRy
b2xsZXIuZGlkSGlkZUNvbnRleHRNZW51Q2FsbGJhY2sgPSBjbGVhckNhbGxiYWNrc0FuZFNjcmlw
dENvbXBsZXRlOwogICAgICAgICAgICAgICAgIH0pKClgLCByZXNvbHZlKTsKICAgICAgICAgfSk7
CiAgICAgfQpAQCAtNTg1LDYgKzU4OSwyMiBAQCB3aW5kb3cuVUlIZWxwZXIgPSBjbGFzcyBVSUhl
bHBlciB7CiAgICAgICAgIH0pOwogICAgIH0KIAorICAgIHN0YXRpYyB3YWl0Rm9yQ29udGV4dE1l
bnVUb0hpZGUoKQorICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLmlzV2ViS2l0MigpIHx8ICF0aGlz
LmlzSU9TRmFtaWx5KCkpCisgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7CisK
KyAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgICAgICAgICAgdGVz
dFJ1bm5lci5ydW5VSVNjcmlwdChgCisgICAgICAgICAgICAgICAgKGZ1bmN0aW9uKCkgeworICAg
ICAgICAgICAgICAgICAgICBpZiAodWlDb250cm9sbGVyLmlzU2hvd2luZ0NvbnRleHRNZW51KQor
ICAgICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZERpc21pc3NDb250ZXh0TWVu
dUNhbGxiYWNrID0gKCkgPT4gdWlDb250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUoKTsKKyAgICAg
ICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVy
LnVpU2NyaXB0Q29tcGxldGUoKTsKKyAgICAgICAgICAgICAgICB9KSgpYCwgcmVzb2x2ZSk7Cisg
ICAgICAgIH0pOworICAgIH0KKwogICAgIHN0YXRpYyB3YWl0Rm9yS2V5Ym9hcmRUb0hpZGUoKQog
ICAgIHsKICAgICAgICAgaWYgKCF0aGlzLmlzV2ViS2l0MigpIHx8ICF0aGlzLmlzSU9TRmFtaWx5
KCkpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>