<?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>199192</bug_id>
          
          <creation_ts>2019-06-25 10:00:34 -0700</creation_ts>
          <short_desc>[iOS] Occasional crash under -[UIPreviewTarget initWithContainer:center:transform:] when generating a drag preview</short_desc>
          <delta_ts>2019-06-25 11:48:32 -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>WebKit Misc.</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>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1547711</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-06-25 10:00:34 -0700</bug_when>
    <thetext>&lt;rdar://problem/51554509&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1547727</commentid>
    <comment_count>1</comment_count>
      <attachid>372844</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-06-25 10:54:12 -0700</bug_when>
    <thetext>Created attachment 372844
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1547729</commentid>
    <comment_count>2</comment_count>
      <attachid>372845</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-06-25 10:56:18 -0700</bug_when>
    <thetext>Created attachment 372845
Tweak ChangeLog wording</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1547756</commentid>
    <comment_count>3</comment_count>
      <attachid>372845</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-25 11:48:31 -0700</bug_when>
    <thetext>Comment on attachment 372845
Tweak ChangeLog wording

Clearing flags on attachment: 372845

Committed r246800: &lt;https://trac.webkit.org/changeset/246800&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1547757</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-25 11:48:32 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>372844</attachid>
            <date>2019-06-25 10:54:12 -0700</date>
            <delta_ts>2019-06-25 10:56:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199192-20190625105412.patch</filename>
            <type>text/plain</type>
            <size>16434</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ2NzY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGZkYzM2YTdkOWJiZTliZmQx
ODgwN2Q4YmZiZmMyMDhlNWEwZDMxOWUuLjc1NDQwMzM3OGEzMjZhYzY5NzkwZTEyYWY3NWU2NTU1
NDQ2MzIwMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTktMDYtMjUgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gT2NjYXNpb25h
bCBjcmFzaCB1bmRlciAtW1VJUHJldmlld1RhcmdldCBpbml0V2l0aENvbnRhaW5lcjpjZW50ZXI6
dHJhbnNmb3JtOl0gd2hlbiBnZW5lcmF0aW5nIGEgZHJhZyBwcmV2aWV3CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTkxOTIKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzUxNTU0NTA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFR3ZWFrIG91ciBwcmV2aWV3IGdlbmVyYXRpb24gY29kZSAoZm9yIGJvdGgg
dGhlIGNvbnRleHQgbWVudSBhbmQgZHJhZ2dpbmcpIHRvIGJlIHJvYnVzdCBpbiB0aGUgY2FzZSB3
aGVyZSB0aGUKKyAgICAgICAgY29udGVudCB2aWV3J3MgdW5zY2FsZWQgdmlldyBpcyBuaWw7IHRo
aXMgbWF5IGhhcHBlbiBpbiB0aGUgY2FzZSBhZnRlciB0aGUgd2ViIGNvbnRlbnQgcHJvY2VzcyBp
cyB0ZXJtaW5hdGVkCisgICAgICAgIGFuZCAtY2xlYW51cEludGVyYWN0aW9uIGlzIGNhbGxlZCwg
YnV0IGJlZm9yZSAtc2V0dXBJbnRlcmFjdGlvbiBpcyBzdWJzZXF1ZW50bHkgY2FsbGVkLCBidXQg
bWF5IGFsc28gb2NjdXIgaW4KKyAgICAgICAgdGhlIGNhc2Ugd2hlcmUgdGhlIHdlYiB2aWV3IGlz
IHJlbW92ZWQgZnJvbSB0aGUgdmlldyBoaWVyYXJjaHkgcmlnaHQgYmVmb3JlIHRoZSBwbGF0Zm9y
bSBhc2tzIGZvciBhIHRhcmdldGVkCisgICAgICAgIHByZXZpZXcuCisKKyAgICAgICAgVGVzdDog
ICBEcmFnQW5kRHJvcFRlc3RzLldlYlByb2Nlc3NUZXJtaW5hdGlvbkR1cmluZ0RyYWcKKyAgICAg
ICAgICAgICAgICBEcmFnQW5kRHJvcFRlc3RzLldlYlZpZXdSZW1vdmVkRnJvbVZpZXdIaWVyYXJj
aHlEdXJpbmdEcmFnCisKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRl
cmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBjb250YWluZXJWaWV3Rm9yVGFy
Z2V0ZWRQcmV2aWV3c10pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF9kZWxpdmVyRGVsYXll
ZERyb3BQcmV2aWV3SWZQb3NzaWJsZTpdKToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBkcmFn
SW50ZXJhY3Rpb246cHJldmlld0ZvckxpZnRpbmdJdGVtOnNlc3Npb246XSk6CisgICAgICAgICgt
W1dLQ29udGVudFZpZXcgX2Vuc3VyZVRhcmdldGVkUHJldmlld10pOgorCiAyMDE5LTA2LTI0ICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUGFnZXMgdXNpbmcgR29v
Z2xlJ3MgYW50aS1mbGlja2VyIG9wdGltaXphdGlvbiBtYXkgdGFrZSB+NSBzZWNvbmRzIHRvIGRv
IGluaXRpYWwgcGFpbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9E
cmFnRHJvcEludGVyYWN0aW9uU3RhdGUubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
RHJhZ0Ryb3BJbnRlcmFjdGlvblN0YXRlLm1tCmluZGV4IDhmMjgwN2IyMzBlYjMxNDA3ODhjY2Q5
Y2NjOWY2MjNiZGRmNTE2YmEuLmFmMjc2YTMwMzA5MmUwNmE4MDg5NDczNzA5ZTliYWNlMWVlZTRk
OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9EcmFnRHJvcEludGVy
YWN0aW9uU3RhdGUubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL0RyYWdEcm9w
SW50ZXJhY3Rpb25TdGF0ZS5tbQpAQCAtNDYsNyArNDYsNyBAQCBzdGF0aWMgVUlEcmFnSXRlbSAq
ZHJhZ0l0ZW1NYXRjaGluZ0lkZW50aWZpZXIoaWQgPFVJRHJhZ1Nlc3Npb24+IHNlc3Npb24sIE5T
SW50ZQogCiBzdGF0aWMgUmV0YWluUHRyPFVJVGFyZ2V0ZWREcmFnUHJldmlldz4gY3JlYXRlVGFy
Z2V0ZWREcmFnUHJldmlldyhVSUltYWdlICppbWFnZSwgVUlWaWV3ICpyb290VmlldywgVUlWaWV3
ICpwcmV2aWV3Q29udGFpbmVyLCBjb25zdCBGbG9hdFJlY3QmIGZyYW1lSW5Sb290Vmlld0Nvb3Jk
aW5hdGVzLCBjb25zdCBWZWN0b3I8RmxvYXRSZWN0PiYgY2xpcHBpbmdSZWN0c0luRnJhbWVDb29y
ZGluYXRlcywgVUlDb2xvciAqYmFja2dyb3VuZENvbG9yLCBVSUJlemllclBhdGggKnZpc2libGVQ
YXRoKQogewotICAgIGlmIChmcmFtZUluUm9vdFZpZXdDb29yZGluYXRlcy5pc0VtcHR5KCkgfHwg
IWltYWdlKQorICAgIGlmIChmcmFtZUluUm9vdFZpZXdDb29yZGluYXRlcy5pc0VtcHR5KCkgfHwg
IWltYWdlIHx8ICFwcmV2aWV3Q29udGFpbmVyLndpbmRvdykKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAKICAgICBOU011dGFibGVBcnJheSAqY2xpcHBpbmdSZWN0VmFsdWVzSW5GcmFtZUNvb3Jk
aW5hdGVzID0gW05TTXV0YWJsZUFycmF5IGFycmF5V2l0aENhcGFjaXR5OmNsaXBwaW5nUmVjdHNJ
bkZyYW1lQ29vcmRpbmF0ZXMuc2l6ZSgpXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IDUzYjBiZTk5N2I1
MWFhOTE5OTYyY2ZhNDRjNWI1MmM5MDM4NjNiZmEuLjRkNDJmMGIwMWVhYTFlMTVlNjRhZDQ5YWM0
MWE3ZDhkNTcwMmM2ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQpAQCAtNjIxNCw2ICs2MjE0LDExIEBAIC0g
KEJPT0wpX3Nob3VsZFVzZUNvbnRleHRNZW51cwogICAgIHJldHVybiBOTzsKIH0KIAorLSAoVUlW
aWV3ICopY29udGFpbmVyVmlld0ZvclRhcmdldGVkUHJldmlld3MKK3sKKyAgICByZXR1cm4gc2Vs
Zi51bnNjYWxlZFZpZXcgPzogc2VsZjsKK30KKwogI2lmIEVOQUJMRShEUkFHX1NVUFBPUlQpCiAK
IHN0YXRpYyBCT09MIHNob3VsZEVuYWJsZURyYWdJbnRlcmFjdGlvbkZvclBvbGljeShfV0tEcmFn
SW50ZXJhY3Rpb25Qb2xpY3kgcG9saWN5KQpAQCAtNjQ0Niw3ICs2NDUxLDcgQEAgLSAodm9pZClf
ZGVsaXZlckRlbGF5ZWREcm9wUHJldmlld0lmUG9zc2libGU6KE9wdGlvbmFsPFdlYkNvcmU6OlRl
eHRJbmRpY2F0b3JEYXQKICAgICBbX3Vuc2VsZWN0ZWRDb250ZW50U25hcHNob3Qgc2V0RnJhbWU6
ZGF0YS0+Y29udGVudEltYWdlV2l0aG91dFNlbGVjdGlvblJlY3RJblJvb3RWaWV3Q29vcmRpbmF0
ZXNdOwogCiAgICAgW3NlbGYgaW5zZXJ0U3VidmlldzpfdW5zZWxlY3RlZENvbnRlbnRTbmFwc2hv
dC5nZXQoKSBiZWxvd1N1YnZpZXc6X3Zpc2libGVDb250ZW50Vmlld1NuYXBzaG90LmdldCgpXTsK
LSAgICBfZHJhZ0Ryb3BJbnRlcmFjdGlvblN0YXRlLmRlbGl2ZXJEZWxheWVkRHJvcFByZXZpZXco
c2VsZiwgc2VsZi51bnNjYWxlZFZpZXcsIGRhdGEudmFsdWUoKSk7CisgICAgX2RyYWdEcm9wSW50
ZXJhY3Rpb25TdGF0ZS5kZWxpdmVyRGVsYXllZERyb3BQcmV2aWV3KHNlbGYsIHNlbGYuY29udGFp
bmVyVmlld0ZvclRhcmdldGVkUHJldmlld3MsIGRhdGEudmFsdWUoKSk7CiB9CiAKIC0gKHZvaWQp
X2RpZFBlcmZvcm1EcmFnT3BlcmF0aW9uOihCT09MKWhhbmRsZWQKQEAgLTY3OTIsNyArNjc5Nyw3
IEBAIC0gKFVJVGFyZ2V0ZWREcmFnUHJldmlldyAqKWRyYWdJbnRlcmFjdGlvbjooVUlEcmFnSW50
ZXJhY3Rpb24gKilpbnRlcmFjdGlvbiBwcmV2CiAgICAgICAgIGlmIChvdmVycmlkZGVuUHJldmll
dykKICAgICAgICAgICAgIHJldHVybiBvdmVycmlkZGVuUHJldmlldzsKICAgICB9Ci0gICAgcmV0
dXJuIF9kcmFnRHJvcEludGVyYWN0aW9uU3RhdGUucHJldmlld0ZvckRyYWdJdGVtKGl0ZW0sIHNl
bGYsIHNlbGYudW5zY2FsZWRWaWV3KTsKKyAgICByZXR1cm4gX2RyYWdEcm9wSW50ZXJhY3Rpb25T
dGF0ZS5wcmV2aWV3Rm9yRHJhZ0l0ZW0oaXRlbSwgc2VsZiwgc2VsZi5jb250YWluZXJWaWV3Rm9y
VGFyZ2V0ZWRQcmV2aWV3cyk7CiB9CiAKIC0gKHZvaWQpZHJhZ0ludGVyYWN0aW9uOihVSURyYWdJ
bnRlcmFjdGlvbiAqKWludGVyYWN0aW9uIHdpbGxBbmltYXRlTGlmdFdpdGhBbmltYXRvcjooaWQg
PFVJRHJhZ0FuaW1hdGluZz4pYW5pbWF0b3Igc2Vzc2lvbjooaWQgPFVJRHJhZ1Nlc3Npb24+KXNl
c3Npb24KQEAgLTc4ODAsNyArNzg4NSw3IEBAIHN0YXRpYyBSZXRhaW5QdHI8VUlJbWFnZT4gdWlJ
bWFnZUZvckltYWdlKFdlYkNvcmU6OkltYWdlKiBpbWFnZSkKIC8vIEZJWE1FOiBUaGlzIHNob3Vs
ZCBiZSBtZXJnZWQgd2l0aCBjcmVhdGVUYXJnZXRlZERyYWdQcmV2aWV3IGluIERyYWdEcm9wSW50
ZXJhY3Rpb25TdGF0ZS4KIHN0YXRpYyBSZXRhaW5QdHI8VUlUYXJnZXRlZFByZXZpZXc+IGNyZWF0
ZVRhcmdldGVkUHJldmlldyhVSUltYWdlICppbWFnZSwgVUlWaWV3ICpyb290VmlldywgVUlWaWV3
ICpwcmV2aWV3Q29udGFpbmVyLCBjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmIGZyYW1lSW5Sb290
Vmlld0Nvb3JkaW5hdGVzLCBjb25zdCBWZWN0b3I8V2ViQ29yZTo6RmxvYXRSZWN0PiYgY2xpcHBp
bmdSZWN0c0luRnJhbWVDb29yZGluYXRlcywgVUlDb2xvciAqYmFja2dyb3VuZENvbG9yKQogewot
ICAgIGlmIChmcmFtZUluUm9vdFZpZXdDb29yZGluYXRlcy5pc0VtcHR5KCkgfHwgIWltYWdlKQor
ICAgIGlmIChmcmFtZUluUm9vdFZpZXdDb29yZGluYXRlcy5pc0VtcHR5KCkgfHwgIWltYWdlIHx8
ICFwcmV2aWV3Q29udGFpbmVyLndpbmRvdykKICAgICAgICAgcmV0dXJuIG5pbDsKIAogICAgIFdl
YkNvcmU6OkZsb2F0UmVjdCBmcmFtZUluQ29udGFpbmVyQ29vcmRpbmF0ZXMgPSBbcm9vdFZpZXcg
Y29udmVydFJlY3Q6ZnJhbWVJblJvb3RWaWV3Q29vcmRpbmF0ZXMgdG9WaWV3OnByZXZpZXdDb250
YWluZXJdOwpAQCAtNzkzNiwxNSArNzk0MSwxNSBAQCAtIChVSVRhcmdldGVkUHJldmlldyAqKV9l
bnN1cmVUYXJnZXRlZFByZXZpZXcKICAgICBpZiAoX3Bvc2l0aW9uSW5mb3JtYXRpb24uaXNMaW5r
ICYmIF9wb3NpdGlvbkluZm9ybWF0aW9uLmxpbmtJbmRpY2F0b3IuY29udGVudEltYWdlKSB7CiAg
ICAgICAgIGF1dG8gaW5kaWNhdG9yID0gX3Bvc2l0aW9uSW5mb3JtYXRpb24ubGlua0luZGljYXRv
cjsKICAgICAgICAgYXV0byB0ZXh0SW5kaWNhdG9ySW1hZ2UgPSB1aUltYWdlRm9ySW1hZ2UoaW5k
aWNhdG9yLmNvbnRlbnRJbWFnZS5nZXQoKSk7Ci0gICAgICAgIHRhcmdldGVkUHJldmlldyA9IGNy
ZWF0ZVRhcmdldGVkUHJldmlldyh0ZXh0SW5kaWNhdG9ySW1hZ2UuZ2V0KCksIHNlbGYsIHNlbGYu
dW5zY2FsZWRWaWV3LCBpbmRpY2F0b3IudGV4dEJvdW5kaW5nUmVjdEluUm9vdFZpZXdDb29yZGlu
YXRlcywgaW5kaWNhdG9yLnRleHRSZWN0c0luQm91bmRpbmdSZWN0Q29vcmRpbmF0ZXMsIFtVSUNv
bG9yIGNvbG9yV2l0aENHQ29sb3I6Y2FjaGVkQ0dDb2xvcihpbmRpY2F0b3IuZXN0aW1hdGVkQmFj
a2dyb3VuZENvbG9yKV0pOworICAgICAgICB0YXJnZXRlZFByZXZpZXcgPSBjcmVhdGVUYXJnZXRl
ZFByZXZpZXcodGV4dEluZGljYXRvckltYWdlLmdldCgpLCBzZWxmLCBzZWxmLmNvbnRhaW5lclZp
ZXdGb3JUYXJnZXRlZFByZXZpZXdzLCBpbmRpY2F0b3IudGV4dEJvdW5kaW5nUmVjdEluUm9vdFZp
ZXdDb29yZGluYXRlcywgaW5kaWNhdG9yLnRleHRSZWN0c0luQm91bmRpbmdSZWN0Q29vcmRpbmF0
ZXMsIFtVSUNvbG9yIGNvbG9yV2l0aENHQ29sb3I6Y2FjaGVkQ0dDb2xvcihpbmRpY2F0b3IuZXN0
aW1hdGVkQmFja2dyb3VuZENvbG9yKV0pOwogICAgIH0gZWxzZSBpZiAoKF9wb3NpdGlvbkluZm9y
bWF0aW9uLmlzQXR0YWNobWVudCB8fCBfcG9zaXRpb25JbmZvcm1hdGlvbi5pc0ltYWdlKSAmJiBf
cG9zaXRpb25JbmZvcm1hdGlvbi5pbWFnZSkgewogICAgICAgICBhdXRvIGNnSW1hZ2UgPSBfcG9z
aXRpb25JbmZvcm1hdGlvbi5pbWFnZS0+bWFrZUNHSW1hZ2VDb3B5KCk7CiAgICAgICAgIGF1dG8g
aW1hZ2UgPSBhZG9wdE5TKFtbVUlJbWFnZSBhbGxvY10gaW5pdFdpdGhDR0ltYWdlOmNnSW1hZ2Uu
Z2V0KCldKTsKLSAgICAgICAgdGFyZ2V0ZWRQcmV2aWV3ID0gY3JlYXRlVGFyZ2V0ZWRQcmV2aWV3
KGltYWdlLmdldCgpLCBzZWxmLCBzZWxmLnVuc2NhbGVkVmlldywgX3Bvc2l0aW9uSW5mb3JtYXRp
b24uYm91bmRzLCB7IH0sIG5pbCk7CisgICAgICAgIHRhcmdldGVkUHJldmlldyA9IGNyZWF0ZVRh
cmdldGVkUHJldmlldyhpbWFnZS5nZXQoKSwgc2VsZiwgc2VsZi5jb250YWluZXJWaWV3Rm9yVGFy
Z2V0ZWRQcmV2aWV3cywgX3Bvc2l0aW9uSW5mb3JtYXRpb24uYm91bmRzLCB7IH0sIG5pbCk7CiAg
ICAgfQogCiAgICAgaWYgKCF0YXJnZXRlZFByZXZpZXcpCi0gICAgICAgIHRhcmdldGVkUHJldmll
dyA9IGNyZWF0ZUZhbGxiYWNrVGFyZ2V0ZWRQcmV2aWV3KHNlbGYsIHNlbGYudW5zY2FsZWRWaWV3
LCBfcG9zaXRpb25JbmZvcm1hdGlvbi5ib3VuZHMpOworICAgICAgICB0YXJnZXRlZFByZXZpZXcg
PSBjcmVhdGVGYWxsYmFja1RhcmdldGVkUHJldmlldyhzZWxmLCBzZWxmLmNvbnRhaW5lclZpZXdG
b3JUYXJnZXRlZFByZXZpZXdzLCBfcG9zaXRpb25JbmZvcm1hdGlvbi5ib3VuZHMpOwogCiAgICAg
X2NvbnRleHRNZW51SW50ZXJhY3Rpb25UYXJnZXRlZFByZXZpZXcgPSBXVEZNb3ZlKHRhcmdldGVk
UHJldmlldyk7CiAgICAgcmV0dXJuIF9jb250ZXh0TWVudUludGVyYWN0aW9uVGFyZ2V0ZWRQcmV2
aWV3LmdldCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9n
CmluZGV4IDQ0ZWYxYzk2ZTE0MzcwZGI3ZTRiMWYxZGM0ZDBiZWFiMjI0ZGY4YjkuLmEwNzllMmUx
MmI4NzhlY2Y1NGM0N2MwYTllMmQ2MmFlODNlNDRmZGQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5n
ZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxOS0wNi0yNSAg
V2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBP
Y2Nhc2lvbmFsIGNyYXNoIHVuZGVyIC1bVUlQcmV2aWV3VGFyZ2V0IGluaXRXaXRoQ29udGFpbmVy
OmNlbnRlcjp0cmFuc2Zvcm06XSB3aGVuIGdlbmVyYXRpbmcgYSBkcmFnIHByZXZpZXcKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5OTE5MgorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNTE1NTQ1MDk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVHdlYWsgdGhlIGRyYWcgYW5kIGRyb3Agc2ltdWxhdG9yIHRv
IGFzayBmb3IgZHJhZyBjYW5jZWxsYXRpb24gcHJldmlld3MsIGFuZCB1c2UgdGhpcyB0byB3cml0
ZSBhIGNvdXBsZSB0ZXN0cyB0bworICAgICAgICB2ZXJpZnkgdGhhdCB3ZSBncmFjZWZ1bGx5IGhh
bmRsZSB3ZWIgcHJvY2VzcyB0ZXJtaW5hdGlvbiBhbmQgd2ViIHZpZXcgdW5wYXJlbnRpbmcgbWlk
LWRyYWcuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL2lvcy9EcmFnQW5kRHJvcFRl
c3RzSU9TLm1tOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVz
dFdlYktpdEFQSS9jb2NvYS9EcmFnQW5kRHJvcFNpbXVsYXRvci5oOgorICAgICAgICAqIFRlc3RX
ZWJLaXRBUEkvaW9zL0RyYWdBbmREcm9wU2ltdWxhdG9ySU9TLm1tOgorICAgICAgICAoLVtEcmFn
QW5kRHJvcFNpbXVsYXRvciBfcmVzZXRTaW11bGF0ZWRTdGF0ZV0pOgorICAgICAgICAoLVtEcmFn
QW5kRHJvcFNpbXVsYXRvciBfY29uY2x1ZGVEcm9wQW5kUGVyZm9ybU9wZXJhdGlvbklmTmVjZXNz
YXJ5XSk6CisgICAgICAgICgtW0RyYWdBbmREcm9wU2ltdWxhdG9yIF9hZHZhbmNlUHJvZ3Jlc3Nd
KToKKyAgICAgICAgKC1bRHJhZ0FuZERyb3BTaW11bGF0b3IgbGlmdFByZXZpZXdzXSk6CisgICAg
ICAgICgtW0RyYWdBbmREcm9wU2ltdWxhdG9yIGNhbmNlbGxhdGlvblByZXZpZXdzXSk6CisgICAg
ICAgICgtW0RyYWdBbmREcm9wU2ltdWxhdG9yIHNldFNlc3Npb25XaWxsQmVnaW5CbG9jazpdKToK
KyAgICAgICAgKC1bRHJhZ0FuZERyb3BTaW11bGF0b3Igc2Vzc2lvbldpbGxCZWdpbkJsb2NrXSk6
CisgICAgICAgICgtW0RyYWdBbmREcm9wU2ltdWxhdG9yIF93ZWJWaWV3OmRhdGFJbnRlcmFjdGlv
bjpzZXNzaW9uV2lsbEJlZ2luOl0pOgorCiAyMDE5LTA2LTI0ICBNaWNoYWVsIENhdGFuemFybyAg
PG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBjb250cmlidXRvcnMuanNvbiBub3Qg
Y2Fub25pY2FsaXplZCBzaW5jZSByMjQzMjk3CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL2lvcy9EcmFnQW5kRHJvcFRlc3RzSU9TLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9pb3MvRHJhZ0FuZERyb3BUZXN0c0lPUy5tbQppbmRleCBmMTEwYjI0Yjg0YjVmOGVl
ZDJlMDUwYTBhZTY2YTRiMjk2ZTdlZmMyLi40NzA5MDQ3NmQ3Y2U1MzExNGUzZGI4M2I5MjZmZTMy
Y2ZiZjFlMDQ5IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL2lvcy9EcmFn
QW5kRHJvcFRlc3RzSU9TLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvaW9zL0Ry
YWdBbmREcm9wVGVzdHNJT1MubW0KQEAgLTE0NDUsNiArMTQ0NSwzMCBAQCBURVNUKERyYWdBbmRE
cm9wVGVzdHMsIENhbmNlbGxlZExpZnREb2VzTm90Q2F1c2VTdWJzZXF1ZW50RHJhZ3NUb0ZhaWwp
CiAgICAgY2hlY2tTdHJpbmdBcnJheXNBcmVFcXVhbChAW0AiZHJhZ3N0YXJ0IiwgQCJkcmFnZW5k
Il0sIFtvdXRwdXRUZXh0IGNvbXBvbmVudHNTZXBhcmF0ZWRCeVN0cmluZzpAIiAiXSk7CiB9CiAK
K1RFU1QoRHJhZ0FuZERyb3BUZXN0cywgV2ViUHJvY2Vzc1Rlcm1pbmF0aW9uRHVyaW5nRHJhZykK
K3sKKyAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDMyMCwgNTAwKV0pOworICAgIFt3ZWJWaWV3IHN5
bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1lZDpAImxpbmstYW5kLXRhcmdldC1kaXYiXTsKKyAg
ICBhdXRvIHNpbXVsYXRvciA9IGFkb3B0TlMoW1tEcmFnQW5kRHJvcFNpbXVsYXRvciBhbGxvY10g
aW5pdFdpdGhXZWJWaWV3OndlYlZpZXcuZ2V0KCldKTsKKyAgICBbc2ltdWxhdG9yIHNldFNlc3Np
b25XaWxsQmVnaW5CbG9jazpeeworICAgICAgICBbd2ViVmlldyBfa2lsbFdlYkNvbnRlbnRQcm9j
ZXNzQW5kUmVzZXRTdGF0ZV07CisgICAgfV07CisgICAgW3NpbXVsYXRvciBydW5Gcm9tOkNHUG9p
bnRNYWtlKDEwMCwgNTApIHRvOkNHUG9pbnRNYWtlKDMwMCwgNTApXTsKK30KKworVEVTVChEcmFn
QW5kRHJvcFRlc3RzLCBXZWJWaWV3UmVtb3ZlZEZyb21WaWV3SGllcmFyY2h5RHVyaW5nRHJhZykK
K3sKKyAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDMyMCwgNTAwKV0pOworICAgIFt3ZWJWaWV3IHN5
bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1lZDpAImxpbmstYW5kLXRhcmdldC1kaXYiXTsKKyAg
ICBhdXRvIHNpbXVsYXRvciA9IGFkb3B0TlMoW1tEcmFnQW5kRHJvcFNpbXVsYXRvciBhbGxvY10g
aW5pdFdpdGhXZWJWaWV3OndlYlZpZXcuZ2V0KCldKTsKKyAgICBbc2ltdWxhdG9yIHNldENvbnZl
cnRJdGVtUHJvdmlkZXJzQmxvY2s6W3dlYlZpZXddIChOU0l0ZW1Qcm92aWRlciAqaXRlbSwgTlNB
cnJheSAqLCBOU0RpY3Rpb25hcnkgKikgLT4gTlNBcnJheSAqIHsKKyAgICAgICAgW3dlYlZpZXcg
cmVtb3ZlRnJvbVN1cGVydmlld107CisgICAgICAgIHJldHVybiBAWyBpdGVtIF07CisgICAgfV07
CisgICAgW3NpbXVsYXRvciBydW5Gcm9tOkNHUG9pbnRNYWtlKDEwMCwgNTApIHRvOkNHUG9pbnRN
YWtlKDMwMCwgNTApXTsKKyAgICBFWFBFQ1RfRVEoW3NpbXVsYXRvciBjYW5jZWxsYXRpb25QcmV2
aWV3c10uZmlyc3RPYmplY3QsIG5pbCk7Cit9CisKIHN0YXRpYyB2b2lkIHRlc3REcmFnQW5kRHJv
cE9udG9UYXJnZXRFbGVtZW50cyhUZXN0V0tXZWJWaWV3ICp3ZWJWaWV3KQogewogICAgIGF1dG8g
c2ltdWxhdG9yID0gYWRvcHROUyhbW0RyYWdBbmREcm9wU2ltdWxhdG9yIGFsbG9jXSBpbml0V2l0
aFdlYlZpZXc6d2ViVmlld10pOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2Nv
YS9EcmFnQW5kRHJvcFNpbXVsYXRvci5oIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9EcmFn
QW5kRHJvcFNpbXVsYXRvci5oCmluZGV4IDNhZDY2OTg3ZWVmZDIwYmQ2ZDU3ZmI3MDRlZDlkYzJi
MWEyYjZhODMuLjdmMzFjNGZmNzE2YjdmODdhMmU2YzM5OTQxNmQwYTZkNWI2OWNiZDQgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvY29jb2EvRHJhZ0FuZERyb3BTaW11bGF0b3IuaAor
KysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL2NvY29hL0RyYWdBbmREcm9wU2ltdWxhdG9yLmgKQEAg
LTEwNCw2ICsxMDQsNyBAQCB0eXBlZGVmIE5TRGljdGlvbmFyeTxOU051bWJlciAqLCBOU1ZhbHVl
ICo+ICpQcm9ncmVzc1RvQ0dQb2ludFZhbHVlTWFwOwogQHByb3BlcnR5IChub25hdG9taWMsIGNv
cHkpIE5TQXJyYXkgKiheY29udmVydEl0ZW1Qcm92aWRlcnNCbG9jaykoTlNJdGVtUHJvdmlkZXIg
KiwgTlNBcnJheSAqLCBOU0RpY3Rpb25hcnkgKik7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgY29w
eSkgTlNBcnJheSAqKF5vdmVycmlkZVBlcmZvcm1Ecm9wQmxvY2spKGlkIDxVSURyb3BTZXNzaW9u
Pik7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgdm9pZCheZHJvcENvbXBsZXRpb25CbG9j
aykoQk9PTCwgTlNBcnJheSAqKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5KSBkaXNwYXRj
aF9ibG9ja190IHNlc3Npb25XaWxsQmVnaW5CbG9jazsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBj
b3B5KSBVSURyb3BPcGVyYXRpb24oXm92ZXJyaWRlRHJhZ1VwZGF0ZUJsb2NrKShVSURyb3BPcGVy
YXRpb24sIGlkIDxVSURyb3BTZXNzaW9uPik7CiAKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFk
b25seSkgTlNBcnJheSAqc291cmNlSXRlbVByb3ZpZGVyczsKQEAgLTExMSw2ICsxMTIsNyBAQCB0
eXBlZGVmIE5TRGljdGlvbmFyeTxOU051bWJlciAqLCBOU1ZhbHVlICo+ICpQcm9ncmVzc1RvQ0dQ
b2ludFZhbHVlTWFwOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBDR1JlY3QgZmlu
YWxTZWxlY3Rpb25TdGFydFJlY3Q7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIENH
UmVjdCBsYXN0S25vd25EcmFnQ2FyZXRSZWN0OwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRv
bmx5KSBOU0FycmF5PFVJVGFyZ2V0ZWREcmFnUHJldmlldyAqPiAqbGlmdFByZXZpZXdzOworQHBy
b3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBOU0FycmF5PFVJVGFyZ2V0ZWREcmFnUHJldmll
dyAqPiAqY2FuY2VsbGF0aW9uUHJldmlld3M7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9u
bHkpIE5TQXJyYXkgKmRyb3BQcmV2aWV3czsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25s
eSkgTlNBcnJheSAqZGVsYXllZERyb3BQcmV2aWV3czsKIApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVz
dFdlYktpdEFQSS9pb3MvRHJhZ0FuZERyb3BTaW11bGF0b3JJT1MubW0gYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL2lvcy9EcmFnQW5kRHJvcFNpbXVsYXRvcklPUy5tbQppbmRleCAxNDdjMzZhN2YxZjI1
YjZmYjhmOTZiN2VlODAyOTE2NGJhODZhNTBkLi45NmQ2ZWNiYmFhYWQ0Mzg5ODU2NGVkNDJhYTRh
OTJiY2IwZWZjOWMyIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL2lvcy9EcmFnQW5k
RHJvcFNpbXVsYXRvcklPUy5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL2lvcy9EcmFnQW5k
RHJvcFNpbXVsYXRvcklPUy5tbQpAQCAtMzEwLDcgKzMxMCw4IEBAIEBpbXBsZW1lbnRhdGlvbiBE
cmFnQW5kRHJvcFNpbXVsYXRvciB7CiAKICAgICBSZXRhaW5QdHI8TlNNdXRhYmxlRGljdGlvbmFy
eTxOU051bWJlciAqLCBOU1ZhbHVlICo+Pl9yZW1haW5pbmdBZGRpdGlvbmFsSXRlbVJlcXVlc3RM
b2NhdGlvbnNCeVByb2dyZXNzOwogICAgIFJldGFpblB0cjxOU011dGFibGVBcnJheTxOU1ZhbHVl
ICo+Pl9xdWV1ZWRBZGRpdGlvbmFsSXRlbVJlcXVlc3RMb2NhdGlvbnM7Ci0gICAgUmV0YWluUHRy
PE5TTXV0YWJsZUFycmF5PFVJVGFyZ2V0ZWREcmFnUHJldmlldyAqPj4gX2xpZnRQcmV2aWV3czsK
KyAgICBSZXRhaW5QdHI8TlNNdXRhYmxlQXJyYXk+IF9saWZ0UHJldmlld3M7CisgICAgUmV0YWlu
UHRyPE5TTXV0YWJsZUFycmF5PFVJVGFyZ2V0ZWREcmFnUHJldmlldyAqPj4gX2NhbmNlbGxhdGlv
blByZXZpZXdzOwogICAgIFJldGFpblB0cjxOU011dGFibGVBcnJheT4gX2Ryb3BQcmV2aWV3czsK
ICAgICBSZXRhaW5QdHI8TlNNdXRhYmxlQXJyYXk+IF9kZWxheWVkRHJvcFByZXZpZXdzOwogCkBA
IC0zMzAsNiArMzMxLDcgQEAgQGltcGxlbWVudGF0aW9uIERyYWdBbmREcm9wU2ltdWxhdG9yIHsK
ICAgICBCbG9ja1B0cjxOU0FycmF5ICooaWQgPFVJRHJvcFNlc3Npb24+KT4gX292ZXJyaWRlUGVy
Zm9ybURyb3BCbG9jazsKICAgICBCbG9ja1B0cjxVSURyb3BPcGVyYXRpb24oVUlEcm9wT3BlcmF0
aW9uLCBpZCk+IF9vdmVycmlkZURyYWdVcGRhdGVCbG9jazsKICAgICBCbG9ja1B0cjx2b2lkKEJP
T0wsIE5TQXJyYXkgKik+IF9kcm9wQ29tcGxldGlvbkJsb2NrOworICAgIEJsb2NrUHRyPHZvaWQo
KT4gX3Nlc3Npb25XaWxsQmVnaW5CbG9jazsKIH0KIAogLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRo
V2ViVmlld0ZyYW1lOihDR1JlY3QpZnJhbWUKQEAgLTM4OCw2ICszOTAsNyBAQCAtICh2b2lkKV9y
ZXNldFNpbXVsYXRlZFN0YXRlCiAgICAgX3F1ZXVlZEFkZGl0aW9uYWxJdGVtUmVxdWVzdExvY2F0
aW9ucyA9IGFkb3B0TlMoW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdF0pOwogICAgIF9saWZ0
UHJldmlld3MgPSBhZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRdKTsKICAgICBf
ZHJvcFByZXZpZXdzID0gYWRvcHROUyhbW05TTXV0YWJsZUFycmF5IGFsbG9jXSBpbml0XSk7Cisg
ICAgX2NhbmNlbGxhdGlvblByZXZpZXdzID0gYWRvcHROUyhbW05TTXV0YWJsZUFycmF5IGFsbG9j
XSBpbml0XSk7CiAgICAgX2RlbGF5ZWREcm9wUHJldmlld3MgPSBhZG9wdE5TKFtbTlNNdXRhYmxl
QXJyYXkgYWxsb2NdIGluaXRdKTsKICAgICBfaGFzU3RhcnRlZElucHV0U2Vzc2lvbiA9IGZhbHNl
OwogfQpAQCAtNDk3LDYgKzUwMCwxNSBAQCAtICh2b2lkKV9jb25jbHVkZURyb3BBbmRQZXJmb3Jt
T3BlcmF0aW9uSWZOZWNlc3NhcnkKICAgICB9IGVsc2UgewogICAgICAgICBfaXNEb25lV2l0aEN1
cnJlbnRSdW4gPSB0cnVlOwogICAgICAgICBfcGhhc2UgPSBEcmFnQW5kRHJvcFBoYXNlQ2FuY2Vs
bGVkOworICAgICAgICBbW19kcm9wU2Vzc2lvbiBpdGVtc10gZW51bWVyYXRlT2JqZWN0c1VzaW5n
QmxvY2s6XihVSURyYWdJdGVtICppdGVtLCBOU1VJbnRlZ2VyIGluZGV4LCBCT09MICopIHsKKyAg
ICAgICAgICAgIFVJVGFyZ2V0ZWREcmFnUHJldmlldyAqZGVmYXVsdFByZXZpZXcgPSBuaWw7Cisg
ICAgICAgICAgICBpZiAoW19saWZ0UHJldmlld3MgY291bnRdICYmIFtbX2xpZnRQcmV2aWV3cyBv
YmplY3RBdEluZGV4OmluZGV4XSBpc0VxdWFsOk5TTnVsbC5udWxsXSkKKyAgICAgICAgICAgICAg
ICBkZWZhdWx0UHJldmlldyA9IFtfbGlmdFByZXZpZXdzIG9iamVjdEF0SW5kZXg6aW5kZXhdOwor
CisgICAgICAgICAgICBVSVRhcmdldGVkRHJhZ1ByZXZpZXcgKnByZXZpZXcgPSBbW193ZWJWaWV3
IGRyYWdJbnRlcmFjdGlvbkRlbGVnYXRlXSBkcmFnSW50ZXJhY3Rpb246W193ZWJWaWV3IGRyYWdJ
bnRlcmFjdGlvbl0gcHJldmlld0ZvckNhbmNlbGxpbmdJdGVtOml0ZW0gd2l0aERlZmF1bHQ6ZGVm
YXVsdFByZXZpZXddOworICAgICAgICAgICAgaWYgKHByZXZpZXcpCisgICAgICAgICAgICAgICAg
W19jYW5jZWxsYXRpb25QcmV2aWV3cyBhZGRPYmplY3Q6cHJldmlld107CisgICAgICAgIH1dOwog
ICAgICAgICBbW193ZWJWaWV3IGRyb3BJbnRlcmFjdGlvbkRlbGVnYXRlXSBkcm9wSW50ZXJhY3Rp
b246W193ZWJWaWV3IGRyb3BJbnRlcmFjdGlvbl0gY29uY2x1ZGVEcm9wOl9kcm9wU2Vzc2lvbi5n
ZXQoKV07CiAgICAgfQogCkBAIC01NzYsOSArNTg4LDggQEAgLSAodm9pZClfYWR2YW5jZVByb2dy
ZXNzCiAgICAgICAgIGZvciAoVUlEcmFnSXRlbSAqaXRlbSBpbiBpdGVtcykgewogICAgICAgICAg
ICAgW2l0ZW1Qcm92aWRlcnMgYWRkT2JqZWN0Oml0ZW0uaXRlbVByb3ZpZGVyXTsKICAgICAgICAg
ICAgIFVJVGFyZ2V0ZWREcmFnUHJldmlldyAqbGlmdFByZXZpZXcgPSBbW193ZWJWaWV3IGRyYWdJ
bnRlcmFjdGlvbkRlbGVnYXRlXSBkcmFnSW50ZXJhY3Rpb246W193ZWJWaWV3IGRyYWdJbnRlcmFj
dGlvbl0gcHJldmlld0ZvckxpZnRpbmdJdGVtOml0ZW0gc2Vzc2lvbjpfZHJhZ1Nlc3Npb24uZ2V0
KCldOwotICAgICAgICAgICAgRVhQRUNUX1RSVUUoISFsaWZ0UHJldmlldyk7Ci0gICAgICAgICAg
ICBpZiAobGlmdFByZXZpZXcpCi0gICAgICAgICAgICAgICAgW19saWZ0UHJldmlld3MgYWRkT2Jq
ZWN0OmxpZnRQcmV2aWV3XTsKKyAgICAgICAgICAgIEVYUEVDVF9UUlVFKGxpZnRQcmV2aWV3IHx8
ICFbX3dlYlZpZXcgd2luZG93XSk7CisgICAgICAgICAgICBbX2xpZnRQcmV2aWV3cyBhZGRPYmpl
Y3Q6bGlmdFByZXZpZXcgPzogTlNOdWxsLm51bGxdOwogICAgICAgICB9CiAKICAgICAgICAgX2Ry
b3BTZXNzaW9uID0gYWRvcHROUyhbW01vY2tEcm9wU2Vzc2lvbiBhbGxvY10gaW5pdFdpdGhQcm92
aWRlcnM6aXRlbVByb3ZpZGVycyBsb2NhdGlvbjpzZWxmLl9jdXJyZW50TG9jYXRpb24gd2luZG93
Oltfd2ViVmlldyB3aW5kb3ddIGFsbG93TW92ZTpzZWxmLnNob3VsZEFsbG93TW92ZU9wZXJhdGlv
bl0pOwpAQCAtNjYyLDExICs2NzMsMTYgQEAgLSAoRHJhZ0FuZERyb3BQaGFzZSlwaGFzZQogICAg
IHJldHVybiBfcGhhc2U7CiB9CiAKLS0gKE5TQXJyYXk8VUlUYXJnZXRlZERyYWdQcmV2aWV3ICo+
ICopbGlmdFByZXZpZXdzCistIChOU0FycmF5ICopbGlmdFByZXZpZXdzCiB7CiAgICAgcmV0dXJu
IF9saWZ0UHJldmlld3MuZ2V0KCk7CiB9CiAKKy0gKE5TQXJyYXk8VUlUYXJnZXRlZERyYWdQcmV2
aWV3ICo+ICopY2FuY2VsbGF0aW9uUHJldmlld3MKK3sKKyAgICByZXR1cm4gX2NhbmNlbGxhdGlv
blByZXZpZXdzLmdldCgpOworfQorCiAtIChOU0FycmF5PFVJVGFyZ2V0ZWREcmFnUHJldmlldyAq
PiAqKWRyb3BQcmV2aWV3cwogewogICAgIHJldHVybiBfZHJvcFByZXZpZXdzLmdldCgpOwpAQCAt
NzU3LDggKzc3MywyNCBAQCAtICh2b2lkKF4pKEJPT0wsIE5TQXJyYXkgKikpZHJvcENvbXBsZXRp
b25CbG9jawogICAgIHJldHVybiBfZHJvcENvbXBsZXRpb25CbG9jay5nZXQoKTsKIH0KIAorLSAo
dm9pZClzZXRTZXNzaW9uV2lsbEJlZ2luQmxvY2s6KGRpc3BhdGNoX2Jsb2NrX3QpYmxvY2sKK3sK
KyAgICBfc2Vzc2lvbldpbGxCZWdpbkJsb2NrID0gYmxvY2s7Cit9CisKKy0gKGRpc3BhdGNoX2Js
b2NrX3Qpc2Vzc2lvbldpbGxCZWdpbkJsb2NrCit7CisgICAgcmV0dXJuIF9zZXNzaW9uV2lsbEJl
Z2luQmxvY2suZ2V0KCk7Cit9CisKICNwcmFnbWEgbWFyayAtIFdLVUlEZWxlZ2F0ZVByaXZhdGUK
IAorLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBkYXRhSW50ZXJhY3Rpb246
KFVJRHJhZ0ludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gc2Vzc2lvbldpbGxCZWdpbjooaWQgPFVJ
RHJhZ1Nlc3Npb24+KXNlc3Npb24KK3sKKyAgICBpZiAoX3Nlc3Npb25XaWxsQmVnaW5CbG9jaykK
KyAgICAgICAgX3Nlc3Npb25XaWxsQmVnaW5CbG9jaygpOworfQorCiAtICh2b2lkKV93ZWJWaWV3
OihXS1dlYlZpZXcgKil3ZWJWaWV3IGRhdGFJbnRlcmFjdGlvbk9wZXJhdGlvbldhc0hhbmRsZWQ6
KEJPT0wpaGFuZGxlZCBmb3JTZXNzaW9uOihpZClzZXNzaW9uIGl0ZW1Qcm92aWRlcnM6KE5TQXJy
YXk8TlNJdGVtUHJvdmlkZXIgKj4gKilpdGVtUHJvdmlkZXJzCiB7CiAgICAgaWYgKHNlbGYuZHJv
cENvbXBsZXRpb25CbG9jaykK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>372845</attachid>
            <date>2019-06-25 10:56:18 -0700</date>
            <delta_ts>2019-06-25 11:48:31 -0700</delta_ts>
            <desc>Tweak ChangeLog wording</desc>
            <filename>bug-199192-20190625105617.patch</filename>
            <type>text/plain</type>
            <size>16480</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ2NzY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGZkYzM2YTdkOWJiZTliZmQx
ODgwN2Q4YmZiZmMyMDhlNWEwZDMxOWUuLmQ5MWM4MDhiOTcyMDBkNDQ2YmQ2OGJkOTNjNjMxYTk0
Y2IyMDk1M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTktMDYtMjUgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gT2NjYXNpb25h
bCBjcmFzaCB1bmRlciAtW1VJUHJldmlld1RhcmdldCBpbml0V2l0aENvbnRhaW5lcjpjZW50ZXI6
dHJhbnNmb3JtOl0gd2hlbiBnZW5lcmF0aW5nIGEgZHJhZyBwcmV2aWV3CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTkxOTIKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzUxNTU0NTA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFR3ZWFrIG91ciBwcmV2aWV3IGdlbmVyYXRpb24gY29kZSAoZm9yIGJvdGgg
dGhlIGNvbnRleHQgbWVudSBhbmQgZHJhZ2dpbmcpIHRvIGJlIHJvYnVzdCBpbiB0aGUgY2FzZSB3
aGVyZSB0aGUKKyAgICAgICAgY29udGVudCB2aWV3J3MgdW5zY2FsZWQgdmlldyBpcyBuaWw7IHRo
aXMgbWF5IGhhcHBlbiBpbiB0aGUgY2FzZSBhZnRlciB0aGUgd2ViIGNvbnRlbnQgcHJvY2VzcyBp
cyB0ZXJtaW5hdGVkCisgICAgICAgIGFuZCAtY2xlYW51cEludGVyYWN0aW9uIGlzIGNhbGxlZCwg
YnV0IGJlZm9yZSAtc2V0dXBJbnRlcmFjdGlvbiBpcyBzdWJzZXF1ZW50bHkgY2FsbGVkLgorCisg
ICAgICAgIEFkZGl0aW9uYWxseSwgbWFrZSBvdXIgbG9naWMgZm9yIGNyZWF0aW5nIHRhcmdldGVk
IHByZXZpZXdzIHJvYnVzdCBpbiB0aGUgY2FzZSB3aGVyZSB0aGUgdmlldyBpcyByZW1vdmVkIGZy
b20KKyAgICAgICAgdGhlIHZpZXcgaGllcmFyY2h5IHJpZ2h0IGJlZm9yZSB0aGUgcGxhdGZvcm0g
YXNrcyBmb3IgYSB0YXJnZXRlZCBwcmV2aWV3LgorCisgICAgICAgIFRlc3Q6ICAgRHJhZ0FuZERy
b3BUZXN0cy5XZWJQcm9jZXNzVGVybWluYXRpb25EdXJpbmdEcmFnCisgICAgICAgICAgICAgICAg
RHJhZ0FuZERyb3BUZXN0cy5XZWJWaWV3UmVtb3ZlZEZyb21WaWV3SGllcmFyY2h5RHVyaW5nRHJh
ZworCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW06
CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgY29udGFpbmVyVmlld0ZvclRhcmdldGVkUHJldmll
d3NdKToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBfZGVsaXZlckRlbGF5ZWREcm9wUHJldmll
d0lmUG9zc2libGU6XSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgZHJhZ0ludGVyYWN0aW9u
OnByZXZpZXdGb3JMaWZ0aW5nSXRlbTpzZXNzaW9uOl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRW
aWV3IF9lbnN1cmVUYXJnZXRlZFByZXZpZXddKToKKwogMjAxOS0wNi0yNCAgQ2hyaXMgRHVtZXog
IDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFBhZ2VzIHVzaW5nIEdvb2dsZSdzIGFudGkt
ZmxpY2tlciBvcHRpbWl6YXRpb24gbWF5IHRha2UgfjUgc2Vjb25kcyB0byBkbyBpbml0aWFsIHBh
aW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvRHJhZ0Ryb3BJbnRl
cmFjdGlvblN0YXRlLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL0RyYWdEcm9wSW50
ZXJhY3Rpb25TdGF0ZS5tbQppbmRleCA4ZjI4MDdiMjMwZWIzMTQwNzg4Y2NkOWNjYzlmNjIzYmRk
ZjUxNmJhLi5hZjI3NmEzMDMwOTJlMDZhODA4OTQ3MzcwOWU5YmFjZTFlZWU0ZDk0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvRHJhZ0Ryb3BJbnRlcmFjdGlvblN0YXRl
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9EcmFnRHJvcEludGVyYWN0aW9u
U3RhdGUubW0KQEAgLTQ2LDcgKzQ2LDcgQEAgc3RhdGljIFVJRHJhZ0l0ZW0gKmRyYWdJdGVtTWF0
Y2hpbmdJZGVudGlmaWVyKGlkIDxVSURyYWdTZXNzaW9uPiBzZXNzaW9uLCBOU0ludGUKIAogc3Rh
dGljIFJldGFpblB0cjxVSVRhcmdldGVkRHJhZ1ByZXZpZXc+IGNyZWF0ZVRhcmdldGVkRHJhZ1By
ZXZpZXcoVUlJbWFnZSAqaW1hZ2UsIFVJVmlldyAqcm9vdFZpZXcsIFVJVmlldyAqcHJldmlld0Nv
bnRhaW5lciwgY29uc3QgRmxvYXRSZWN0JiBmcmFtZUluUm9vdFZpZXdDb29yZGluYXRlcywgY29u
c3QgVmVjdG9yPEZsb2F0UmVjdD4mIGNsaXBwaW5nUmVjdHNJbkZyYW1lQ29vcmRpbmF0ZXMsIFVJ
Q29sb3IgKmJhY2tncm91bmRDb2xvciwgVUlCZXppZXJQYXRoICp2aXNpYmxlUGF0aCkKIHsKLSAg
ICBpZiAoZnJhbWVJblJvb3RWaWV3Q29vcmRpbmF0ZXMuaXNFbXB0eSgpIHx8ICFpbWFnZSkKKyAg
ICBpZiAoZnJhbWVJblJvb3RWaWV3Q29vcmRpbmF0ZXMuaXNFbXB0eSgpIHx8ICFpbWFnZSB8fCAh
cHJldmlld0NvbnRhaW5lci53aW5kb3cpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAg
TlNNdXRhYmxlQXJyYXkgKmNsaXBwaW5nUmVjdFZhbHVlc0luRnJhbWVDb29yZGluYXRlcyA9IFtO
U011dGFibGVBcnJheSBhcnJheVdpdGhDYXBhY2l0eTpjbGlwcGluZ1JlY3RzSW5GcmFtZUNvb3Jk
aW5hdGVzLnNpemUoKV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRleCA1M2IwYmU5OTdiNTFhYTkxOTk2MmNm
YTQ0YzViNTJjOTAzODYzYmZhLi40ZDQyZjBiMDFlYWExZTE1ZTY0YWQ0OWFjNDFhN2Q4ZDU3MDJj
NmU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTYyMTQsNiArNjIxNCwxMSBAQCAtIChCT09MKV9zaG91
bGRVc2VDb250ZXh0TWVudXMKICAgICByZXR1cm4gTk87CiB9CiAKKy0gKFVJVmlldyAqKWNvbnRh
aW5lclZpZXdGb3JUYXJnZXRlZFByZXZpZXdzCit7CisgICAgcmV0dXJuIHNlbGYudW5zY2FsZWRW
aWV3ID86IHNlbGY7Cit9CisKICNpZiBFTkFCTEUoRFJBR19TVVBQT1JUKQogCiBzdGF0aWMgQk9P
TCBzaG91bGRFbmFibGVEcmFnSW50ZXJhY3Rpb25Gb3JQb2xpY3koX1dLRHJhZ0ludGVyYWN0aW9u
UG9saWN5IHBvbGljeSkKQEAgLTY0NDYsNyArNjQ1MSw3IEBAIC0gKHZvaWQpX2RlbGl2ZXJEZWxh
eWVkRHJvcFByZXZpZXdJZlBvc3NpYmxlOihPcHRpb25hbDxXZWJDb3JlOjpUZXh0SW5kaWNhdG9y
RGF0CiAgICAgW191bnNlbGVjdGVkQ29udGVudFNuYXBzaG90IHNldEZyYW1lOmRhdGEtPmNvbnRl
bnRJbWFnZVdpdGhvdXRTZWxlY3Rpb25SZWN0SW5Sb290Vmlld0Nvb3JkaW5hdGVzXTsKIAogICAg
IFtzZWxmIGluc2VydFN1YnZpZXc6X3Vuc2VsZWN0ZWRDb250ZW50U25hcHNob3QuZ2V0KCkgYmVs
b3dTdWJ2aWV3Ol92aXNpYmxlQ29udGVudFZpZXdTbmFwc2hvdC5nZXQoKV07Ci0gICAgX2RyYWdE
cm9wSW50ZXJhY3Rpb25TdGF0ZS5kZWxpdmVyRGVsYXllZERyb3BQcmV2aWV3KHNlbGYsIHNlbGYu
dW5zY2FsZWRWaWV3LCBkYXRhLnZhbHVlKCkpOworICAgIF9kcmFnRHJvcEludGVyYWN0aW9uU3Rh
dGUuZGVsaXZlckRlbGF5ZWREcm9wUHJldmlldyhzZWxmLCBzZWxmLmNvbnRhaW5lclZpZXdGb3JU
YXJnZXRlZFByZXZpZXdzLCBkYXRhLnZhbHVlKCkpOwogfQogCiAtICh2b2lkKV9kaWRQZXJmb3Jt
RHJhZ09wZXJhdGlvbjooQk9PTCloYW5kbGVkCkBAIC02NzkyLDcgKzY3OTcsNyBAQCAtIChVSVRh
cmdldGVkRHJhZ1ByZXZpZXcgKilkcmFnSW50ZXJhY3Rpb246KFVJRHJhZ0ludGVyYWN0aW9uICop
aW50ZXJhY3Rpb24gcHJldgogICAgICAgICBpZiAob3ZlcnJpZGRlblByZXZpZXcpCiAgICAgICAg
ICAgICByZXR1cm4gb3ZlcnJpZGRlblByZXZpZXc7CiAgICAgfQotICAgIHJldHVybiBfZHJhZ0Ry
b3BJbnRlcmFjdGlvblN0YXRlLnByZXZpZXdGb3JEcmFnSXRlbShpdGVtLCBzZWxmLCBzZWxmLnVu
c2NhbGVkVmlldyk7CisgICAgcmV0dXJuIF9kcmFnRHJvcEludGVyYWN0aW9uU3RhdGUucHJldmll
d0ZvckRyYWdJdGVtKGl0ZW0sIHNlbGYsIHNlbGYuY29udGFpbmVyVmlld0ZvclRhcmdldGVkUHJl
dmlld3MpOwogfQogCiAtICh2b2lkKWRyYWdJbnRlcmFjdGlvbjooVUlEcmFnSW50ZXJhY3Rpb24g
KilpbnRlcmFjdGlvbiB3aWxsQW5pbWF0ZUxpZnRXaXRoQW5pbWF0b3I6KGlkIDxVSURyYWdBbmlt
YXRpbmc+KWFuaW1hdG9yIHNlc3Npb246KGlkIDxVSURyYWdTZXNzaW9uPilzZXNzaW9uCkBAIC03
ODgwLDcgKzc4ODUsNyBAQCBzdGF0aWMgUmV0YWluUHRyPFVJSW1hZ2U+IHVpSW1hZ2VGb3JJbWFn
ZShXZWJDb3JlOjpJbWFnZSogaW1hZ2UpCiAvLyBGSVhNRTogVGhpcyBzaG91bGQgYmUgbWVyZ2Vk
IHdpdGggY3JlYXRlVGFyZ2V0ZWREcmFnUHJldmlldyBpbiBEcmFnRHJvcEludGVyYWN0aW9uU3Rh
dGUuCiBzdGF0aWMgUmV0YWluUHRyPFVJVGFyZ2V0ZWRQcmV2aWV3PiBjcmVhdGVUYXJnZXRlZFBy
ZXZpZXcoVUlJbWFnZSAqaW1hZ2UsIFVJVmlldyAqcm9vdFZpZXcsIFVJVmlldyAqcHJldmlld0Nv
bnRhaW5lciwgY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiBmcmFtZUluUm9vdFZpZXdDb29yZGlu
YXRlcywgY29uc3QgVmVjdG9yPFdlYkNvcmU6OkZsb2F0UmVjdD4mIGNsaXBwaW5nUmVjdHNJbkZy
YW1lQ29vcmRpbmF0ZXMsIFVJQ29sb3IgKmJhY2tncm91bmRDb2xvcikKIHsKLSAgICBpZiAoZnJh
bWVJblJvb3RWaWV3Q29vcmRpbmF0ZXMuaXNFbXB0eSgpIHx8ICFpbWFnZSkKKyAgICBpZiAoZnJh
bWVJblJvb3RWaWV3Q29vcmRpbmF0ZXMuaXNFbXB0eSgpIHx8ICFpbWFnZSB8fCAhcHJldmlld0Nv
bnRhaW5lci53aW5kb3cpCiAgICAgICAgIHJldHVybiBuaWw7CiAKICAgICBXZWJDb3JlOjpGbG9h
dFJlY3QgZnJhbWVJbkNvbnRhaW5lckNvb3JkaW5hdGVzID0gW3Jvb3RWaWV3IGNvbnZlcnRSZWN0
OmZyYW1lSW5Sb290Vmlld0Nvb3JkaW5hdGVzIHRvVmlldzpwcmV2aWV3Q29udGFpbmVyXTsKQEAg
LTc5MzYsMTUgKzc5NDEsMTUgQEAgLSAoVUlUYXJnZXRlZFByZXZpZXcgKilfZW5zdXJlVGFyZ2V0
ZWRQcmV2aWV3CiAgICAgaWYgKF9wb3NpdGlvbkluZm9ybWF0aW9uLmlzTGluayAmJiBfcG9zaXRp
b25JbmZvcm1hdGlvbi5saW5rSW5kaWNhdG9yLmNvbnRlbnRJbWFnZSkgewogICAgICAgICBhdXRv
IGluZGljYXRvciA9IF9wb3NpdGlvbkluZm9ybWF0aW9uLmxpbmtJbmRpY2F0b3I7CiAgICAgICAg
IGF1dG8gdGV4dEluZGljYXRvckltYWdlID0gdWlJbWFnZUZvckltYWdlKGluZGljYXRvci5jb250
ZW50SW1hZ2UuZ2V0KCkpOwotICAgICAgICB0YXJnZXRlZFByZXZpZXcgPSBjcmVhdGVUYXJnZXRl
ZFByZXZpZXcodGV4dEluZGljYXRvckltYWdlLmdldCgpLCBzZWxmLCBzZWxmLnVuc2NhbGVkVmll
dywgaW5kaWNhdG9yLnRleHRCb3VuZGluZ1JlY3RJblJvb3RWaWV3Q29vcmRpbmF0ZXMsIGluZGlj
YXRvci50ZXh0UmVjdHNJbkJvdW5kaW5nUmVjdENvb3JkaW5hdGVzLCBbVUlDb2xvciBjb2xvcldp
dGhDR0NvbG9yOmNhY2hlZENHQ29sb3IoaW5kaWNhdG9yLmVzdGltYXRlZEJhY2tncm91bmRDb2xv
cildKTsKKyAgICAgICAgdGFyZ2V0ZWRQcmV2aWV3ID0gY3JlYXRlVGFyZ2V0ZWRQcmV2aWV3KHRl
eHRJbmRpY2F0b3JJbWFnZS5nZXQoKSwgc2VsZiwgc2VsZi5jb250YWluZXJWaWV3Rm9yVGFyZ2V0
ZWRQcmV2aWV3cywgaW5kaWNhdG9yLnRleHRCb3VuZGluZ1JlY3RJblJvb3RWaWV3Q29vcmRpbmF0
ZXMsIGluZGljYXRvci50ZXh0UmVjdHNJbkJvdW5kaW5nUmVjdENvb3JkaW5hdGVzLCBbVUlDb2xv
ciBjb2xvcldpdGhDR0NvbG9yOmNhY2hlZENHQ29sb3IoaW5kaWNhdG9yLmVzdGltYXRlZEJhY2tn
cm91bmRDb2xvcildKTsKICAgICB9IGVsc2UgaWYgKChfcG9zaXRpb25JbmZvcm1hdGlvbi5pc0F0
dGFjaG1lbnQgfHwgX3Bvc2l0aW9uSW5mb3JtYXRpb24uaXNJbWFnZSkgJiYgX3Bvc2l0aW9uSW5m
b3JtYXRpb24uaW1hZ2UpIHsKICAgICAgICAgYXV0byBjZ0ltYWdlID0gX3Bvc2l0aW9uSW5mb3Jt
YXRpb24uaW1hZ2UtPm1ha2VDR0ltYWdlQ29weSgpOwogICAgICAgICBhdXRvIGltYWdlID0gYWRv
cHROUyhbW1VJSW1hZ2UgYWxsb2NdIGluaXRXaXRoQ0dJbWFnZTpjZ0ltYWdlLmdldCgpXSk7Ci0g
ICAgICAgIHRhcmdldGVkUHJldmlldyA9IGNyZWF0ZVRhcmdldGVkUHJldmlldyhpbWFnZS5nZXQo
KSwgc2VsZiwgc2VsZi51bnNjYWxlZFZpZXcsIF9wb3NpdGlvbkluZm9ybWF0aW9uLmJvdW5kcywg
eyB9LCBuaWwpOworICAgICAgICB0YXJnZXRlZFByZXZpZXcgPSBjcmVhdGVUYXJnZXRlZFByZXZp
ZXcoaW1hZ2UuZ2V0KCksIHNlbGYsIHNlbGYuY29udGFpbmVyVmlld0ZvclRhcmdldGVkUHJldmll
d3MsIF9wb3NpdGlvbkluZm9ybWF0aW9uLmJvdW5kcywgeyB9LCBuaWwpOwogICAgIH0KIAogICAg
IGlmICghdGFyZ2V0ZWRQcmV2aWV3KQotICAgICAgICB0YXJnZXRlZFByZXZpZXcgPSBjcmVhdGVG
YWxsYmFja1RhcmdldGVkUHJldmlldyhzZWxmLCBzZWxmLnVuc2NhbGVkVmlldywgX3Bvc2l0aW9u
SW5mb3JtYXRpb24uYm91bmRzKTsKKyAgICAgICAgdGFyZ2V0ZWRQcmV2aWV3ID0gY3JlYXRlRmFs
bGJhY2tUYXJnZXRlZFByZXZpZXcoc2VsZiwgc2VsZi5jb250YWluZXJWaWV3Rm9yVGFyZ2V0ZWRQ
cmV2aWV3cywgX3Bvc2l0aW9uSW5mb3JtYXRpb24uYm91bmRzKTsKIAogICAgIF9jb250ZXh0TWVu
dUludGVyYWN0aW9uVGFyZ2V0ZWRQcmV2aWV3ID0gV1RGTW92ZSh0YXJnZXRlZFByZXZpZXcpOwog
ICAgIHJldHVybiBfY29udGV4dE1lbnVJbnRlcmFjdGlvblRhcmdldGVkUHJldmlldy5nZXQoKTsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA0NGVm
MWM5NmUxNDM3MGRiN2U0YjFmMWRjNGQwYmVhYjIyNGRmOGI5Li5hMDc5ZTJlMTJiODc4ZWNmNTRj
NDdjMGE5ZTJkNjJhZTgzZTQ0ZmRkIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIv
VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTktMDYtMjUgIFdlbnNvbiBIc2ll
aCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gT2NjYXNpb25hbCBj
cmFzaCB1bmRlciAtW1VJUHJldmlld1RhcmdldCBpbml0V2l0aENvbnRhaW5lcjpjZW50ZXI6dHJh
bnNmb3JtOl0gd2hlbiBnZW5lcmF0aW5nIGEgZHJhZyBwcmV2aWV3CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTkxOTIKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzUxNTU0NTA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFR3ZWFrIHRoZSBkcmFnIGFuZCBkcm9wIHNpbXVsYXRvciB0byBhc2sgZm9yIGRy
YWcgY2FuY2VsbGF0aW9uIHByZXZpZXdzLCBhbmQgdXNlIHRoaXMgdG8gd3JpdGUgYSBjb3VwbGUg
dGVzdHMgdG8KKyAgICAgICAgdmVyaWZ5IHRoYXQgd2UgZ3JhY2VmdWxseSBoYW5kbGUgd2ViIHBy
b2Nlc3MgdGVybWluYXRpb24gYW5kIHdlYiB2aWV3IHVucGFyZW50aW5nIG1pZC1kcmFnLgorCisg
ICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRHJhZ0FuZERyb3BUZXN0c0lPUy5tbToK
KyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkv
Y29jb2EvRHJhZ0FuZERyb3BTaW11bGF0b3IuaDoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL2lv
cy9EcmFnQW5kRHJvcFNpbXVsYXRvcklPUy5tbToKKyAgICAgICAgKC1bRHJhZ0FuZERyb3BTaW11
bGF0b3IgX3Jlc2V0U2ltdWxhdGVkU3RhdGVdKToKKyAgICAgICAgKC1bRHJhZ0FuZERyb3BTaW11
bGF0b3IgX2NvbmNsdWRlRHJvcEFuZFBlcmZvcm1PcGVyYXRpb25JZk5lY2Vzc2FyeV0pOgorICAg
ICAgICAoLVtEcmFnQW5kRHJvcFNpbXVsYXRvciBfYWR2YW5jZVByb2dyZXNzXSk6CisgICAgICAg
ICgtW0RyYWdBbmREcm9wU2ltdWxhdG9yIGxpZnRQcmV2aWV3c10pOgorICAgICAgICAoLVtEcmFn
QW5kRHJvcFNpbXVsYXRvciBjYW5jZWxsYXRpb25QcmV2aWV3c10pOgorICAgICAgICAoLVtEcmFn
QW5kRHJvcFNpbXVsYXRvciBzZXRTZXNzaW9uV2lsbEJlZ2luQmxvY2s6XSk6CisgICAgICAgICgt
W0RyYWdBbmREcm9wU2ltdWxhdG9yIHNlc3Npb25XaWxsQmVnaW5CbG9ja10pOgorICAgICAgICAo
LVtEcmFnQW5kRHJvcFNpbXVsYXRvciBfd2ViVmlldzpkYXRhSW50ZXJhY3Rpb246c2Vzc2lvbldp
bGxCZWdpbjpdKToKKwogMjAxOS0wNi0yNCAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJv
QGlnYWxpYS5jb20+CiAKICAgICAgICAgY29udHJpYnV0b3JzLmpzb24gbm90IGNhbm9uaWNhbGl6
ZWQgc2luY2UgcjI0MzI5NwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9p
b3MvRHJhZ0FuZERyb3BUZXN0c0lPUy5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvaW9z
L0RyYWdBbmREcm9wVGVzdHNJT1MubW0KaW5kZXggZjExMGIyNGI4NGI1ZjhlZWQyZTA1MGEwYWU2
NmE0YjI5NmU3ZWZjMi4uNDcwOTA0NzZkN2NlNTMxMTRlM2RiODNiOTI2ZmUzMmNmYmYxZTA0OSAx
MDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRHJhZ0FuZERyb3BUZXN0
c0lPUy5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL2lvcy9EcmFnQW5kRHJvcFRl
c3RzSU9TLm1tCkBAIC0xNDQ1LDYgKzE0NDUsMzAgQEAgVEVTVChEcmFnQW5kRHJvcFRlc3RzLCBD
YW5jZWxsZWRMaWZ0RG9lc05vdENhdXNlU3Vic2VxdWVudERyYWdzVG9GYWlsKQogICAgIGNoZWNr
U3RyaW5nQXJyYXlzQXJlRXF1YWwoQFtAImRyYWdzdGFydCIsIEAiZHJhZ2VuZCJdLCBbb3V0cHV0
VGV4dCBjb21wb25lbnRzU2VwYXJhdGVkQnlTdHJpbmc6QCIgIl0pOwogfQogCitURVNUKERyYWdB
bmREcm9wVGVzdHMsIFdlYlByb2Nlc3NUZXJtaW5hdGlvbkR1cmluZ0RyYWcpCit7CisgICAgYXV0
byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6
Q0dSZWN0TWFrZSgwLCAwLCAzMjAsIDUwMCldKTsKKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5
TG9hZFRlc3RQYWdlTmFtZWQ6QCJsaW5rLWFuZC10YXJnZXQtZGl2Il07CisgICAgYXV0byBzaW11
bGF0b3IgPSBhZG9wdE5TKFtbRHJhZ0FuZERyb3BTaW11bGF0b3IgYWxsb2NdIGluaXRXaXRoV2Vi
Vmlldzp3ZWJWaWV3LmdldCgpXSk7CisgICAgW3NpbXVsYXRvciBzZXRTZXNzaW9uV2lsbEJlZ2lu
QmxvY2s6XnsKKyAgICAgICAgW3dlYlZpZXcgX2tpbGxXZWJDb250ZW50UHJvY2Vzc0FuZFJlc2V0
U3RhdGVdOworICAgIH1dOworICAgIFtzaW11bGF0b3IgcnVuRnJvbTpDR1BvaW50TWFrZSgxMDAs
IDUwKSB0bzpDR1BvaW50TWFrZSgzMDAsIDUwKV07Cit9CisKK1RFU1QoRHJhZ0FuZERyb3BUZXN0
cywgV2ViVmlld1JlbW92ZWRGcm9tVmlld0hpZXJhcmNoeUR1cmluZ0RyYWcpCit7CisgICAgYXV0
byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6
Q0dSZWN0TWFrZSgwLCAwLCAzMjAsIDUwMCldKTsKKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5
TG9hZFRlc3RQYWdlTmFtZWQ6QCJsaW5rLWFuZC10YXJnZXQtZGl2Il07CisgICAgYXV0byBzaW11
bGF0b3IgPSBhZG9wdE5TKFtbRHJhZ0FuZERyb3BTaW11bGF0b3IgYWxsb2NdIGluaXRXaXRoV2Vi
Vmlldzp3ZWJWaWV3LmdldCgpXSk7CisgICAgW3NpbXVsYXRvciBzZXRDb252ZXJ0SXRlbVByb3Zp
ZGVyc0Jsb2NrOlt3ZWJWaWV3XSAoTlNJdGVtUHJvdmlkZXIgKml0ZW0sIE5TQXJyYXkgKiwgTlNE
aWN0aW9uYXJ5ICopIC0+IE5TQXJyYXkgKiB7CisgICAgICAgIFt3ZWJWaWV3IHJlbW92ZUZyb21T
dXBlcnZpZXddOworICAgICAgICByZXR1cm4gQFsgaXRlbSBdOworICAgIH1dOworICAgIFtzaW11
bGF0b3IgcnVuRnJvbTpDR1BvaW50TWFrZSgxMDAsIDUwKSB0bzpDR1BvaW50TWFrZSgzMDAsIDUw
KV07CisgICAgRVhQRUNUX0VRKFtzaW11bGF0b3IgY2FuY2VsbGF0aW9uUHJldmlld3NdLmZpcnN0
T2JqZWN0LCBuaWwpOworfQorCiBzdGF0aWMgdm9pZCB0ZXN0RHJhZ0FuZERyb3BPbnRvVGFyZ2V0
RWxlbWVudHMoVGVzdFdLV2ViVmlldyAqd2ViVmlldykKIHsKICAgICBhdXRvIHNpbXVsYXRvciA9
IGFkb3B0TlMoW1tEcmFnQW5kRHJvcFNpbXVsYXRvciBhbGxvY10gaW5pdFdpdGhXZWJWaWV3Ondl
YlZpZXddKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvY29jb2EvRHJhZ0FuZERy
b3BTaW11bGF0b3IuaCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvY29jb2EvRHJhZ0FuZERyb3BTaW11
bGF0b3IuaAppbmRleCAzYWQ2Njk4N2VlZmQyMGJkNmQ1N2ZiNzA0ZWQ5ZGMyYjFhMmI2YTgzLi43
ZjMxYzRmZjcxNmI3Zjg3YTJlNmMzOTk0MTZkMGE2ZDViNjljYmQ0IDEwMDY0NAotLS0gYS9Ub29s
cy9UZXN0V2ViS2l0QVBJL2NvY29hL0RyYWdBbmREcm9wU2ltdWxhdG9yLmgKKysrIGIvVG9vbHMv
VGVzdFdlYktpdEFQSS9jb2NvYS9EcmFnQW5kRHJvcFNpbXVsYXRvci5oCkBAIC0xMDQsNiArMTA0
LDcgQEAgdHlwZWRlZiBOU0RpY3Rpb25hcnk8TlNOdW1iZXIgKiwgTlNWYWx1ZSAqPiAqUHJvZ3Jl
c3NUb0NHUG9pbnRWYWx1ZU1hcDsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5KSBOU0FycmF5
ICooXmNvbnZlcnRJdGVtUHJvdmlkZXJzQmxvY2spKE5TSXRlbVByb3ZpZGVyICosIE5TQXJyYXkg
KiwgTlNEaWN0aW9uYXJ5ICopOwogQHByb3BlcnR5IChub25hdG9taWMsIGNvcHkpIE5TQXJyYXkg
Kiheb3ZlcnJpZGVQZXJmb3JtRHJvcEJsb2NrKShpZCA8VUlEcm9wU2Vzc2lvbj4pOwogQHByb3Bl
cnR5IChub25hdG9taWMsIGNvcHkpIHZvaWQoXmRyb3BDb21wbGV0aW9uQmxvY2spKEJPT0wsIE5T
QXJyYXkgKik7CitAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgZGlzcGF0Y2hfYmxvY2tfdCBz
ZXNzaW9uV2lsbEJlZ2luQmxvY2s7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgVUlEcm9w
T3BlcmF0aW9uKF5vdmVycmlkZURyYWdVcGRhdGVCbG9jaykoVUlEcm9wT3BlcmF0aW9uLCBpZCA8
VUlEcm9wU2Vzc2lvbj4pOwogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5TQXJy
YXkgKnNvdXJjZUl0ZW1Qcm92aWRlcnM7CkBAIC0xMTEsNiArMTEyLDcgQEAgdHlwZWRlZiBOU0Rp
Y3Rpb25hcnk8TlNOdW1iZXIgKiwgTlNWYWx1ZSAqPiAqUHJvZ3Jlc3NUb0NHUG9pbnRWYWx1ZU1h
cDsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQ0dSZWN0IGZpbmFsU2VsZWN0aW9u
U3RhcnRSZWN0OwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBDR1JlY3QgbGFzdEtu
b3duRHJhZ0NhcmV0UmVjdDsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgTlNBcnJh
eTxVSVRhcmdldGVkRHJhZ1ByZXZpZXcgKj4gKmxpZnRQcmV2aWV3czsKK0Bwcm9wZXJ0eSAobm9u
YXRvbWljLCByZWFkb25seSkgTlNBcnJheTxVSVRhcmdldGVkRHJhZ1ByZXZpZXcgKj4gKmNhbmNl
bGxhdGlvblByZXZpZXdzOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBOU0FycmF5
ICpkcm9wUHJldmlld3M7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5TQXJyYXkg
KmRlbGF5ZWREcm9wUHJldmlld3M7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
aW9zL0RyYWdBbmREcm9wU2ltdWxhdG9ySU9TLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9pb3Mv
RHJhZ0FuZERyb3BTaW11bGF0b3JJT1MubW0KaW5kZXggMTQ3YzM2YTdmMWYyNWI2ZmI4Zjk2Yjdl
ZTgwMjkxNjRiYTg2YTUwZC4uOTZkNmVjYmJhYWFkNDM4OTg1NjRlZDQyYWE0YTkyYmNiMGVmYzlj
MiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9pb3MvRHJhZ0FuZERyb3BTaW11bGF0
b3JJT1MubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9pb3MvRHJhZ0FuZERyb3BTaW11bGF0
b3JJT1MubW0KQEAgLTMxMCw3ICszMTAsOCBAQCBAaW1wbGVtZW50YXRpb24gRHJhZ0FuZERyb3BT
aW11bGF0b3IgewogCiAgICAgUmV0YWluUHRyPE5TTXV0YWJsZURpY3Rpb25hcnk8TlNOdW1iZXIg
KiwgTlNWYWx1ZSAqPj5fcmVtYWluaW5nQWRkaXRpb25hbEl0ZW1SZXF1ZXN0TG9jYXRpb25zQnlQ
cm9ncmVzczsKICAgICBSZXRhaW5QdHI8TlNNdXRhYmxlQXJyYXk8TlNWYWx1ZSAqPj5fcXVldWVk
QWRkaXRpb25hbEl0ZW1SZXF1ZXN0TG9jYXRpb25zOwotICAgIFJldGFpblB0cjxOU011dGFibGVB
cnJheTxVSVRhcmdldGVkRHJhZ1ByZXZpZXcgKj4+IF9saWZ0UHJldmlld3M7CisgICAgUmV0YWlu
UHRyPE5TTXV0YWJsZUFycmF5PiBfbGlmdFByZXZpZXdzOworICAgIFJldGFpblB0cjxOU011dGFi
bGVBcnJheTxVSVRhcmdldGVkRHJhZ1ByZXZpZXcgKj4+IF9jYW5jZWxsYXRpb25QcmV2aWV3czsK
ICAgICBSZXRhaW5QdHI8TlNNdXRhYmxlQXJyYXk+IF9kcm9wUHJldmlld3M7CiAgICAgUmV0YWlu
UHRyPE5TTXV0YWJsZUFycmF5PiBfZGVsYXllZERyb3BQcmV2aWV3czsKIApAQCAtMzMwLDYgKzMz
MSw3IEBAIEBpbXBsZW1lbnRhdGlvbiBEcmFnQW5kRHJvcFNpbXVsYXRvciB7CiAgICAgQmxvY2tQ
dHI8TlNBcnJheSAqKGlkIDxVSURyb3BTZXNzaW9uPik+IF9vdmVycmlkZVBlcmZvcm1Ecm9wQmxv
Y2s7CiAgICAgQmxvY2tQdHI8VUlEcm9wT3BlcmF0aW9uKFVJRHJvcE9wZXJhdGlvbiwgaWQpPiBf
b3ZlcnJpZGVEcmFnVXBkYXRlQmxvY2s7CiAgICAgQmxvY2tQdHI8dm9pZChCT09MLCBOU0FycmF5
ICopPiBfZHJvcENvbXBsZXRpb25CbG9jazsKKyAgICBCbG9ja1B0cjx2b2lkKCk+IF9zZXNzaW9u
V2lsbEJlZ2luQmxvY2s7CiB9CiAKIC0gKGluc3RhbmNldHlwZSlpbml0V2l0aFdlYlZpZXdGcmFt
ZTooQ0dSZWN0KWZyYW1lCkBAIC0zODgsNiArMzkwLDcgQEAgLSAodm9pZClfcmVzZXRTaW11bGF0
ZWRTdGF0ZQogICAgIF9xdWV1ZWRBZGRpdGlvbmFsSXRlbVJlcXVlc3RMb2NhdGlvbnMgPSBhZG9w
dE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRdKTsKICAgICBfbGlmdFByZXZpZXdzID0g
YWRvcHROUyhbW05TTXV0YWJsZUFycmF5IGFsbG9jXSBpbml0XSk7CiAgICAgX2Ryb3BQcmV2aWV3
cyA9IGFkb3B0TlMoW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdF0pOworICAgIF9jYW5jZWxs
YXRpb25QcmV2aWV3cyA9IGFkb3B0TlMoW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdF0pOwog
ICAgIF9kZWxheWVkRHJvcFByZXZpZXdzID0gYWRvcHROUyhbW05TTXV0YWJsZUFycmF5IGFsbG9j
XSBpbml0XSk7CiAgICAgX2hhc1N0YXJ0ZWRJbnB1dFNlc3Npb24gPSBmYWxzZTsKIH0KQEAgLTQ5
Nyw2ICs1MDAsMTUgQEAgLSAodm9pZClfY29uY2x1ZGVEcm9wQW5kUGVyZm9ybU9wZXJhdGlvbklm
TmVjZXNzYXJ5CiAgICAgfSBlbHNlIHsKICAgICAgICAgX2lzRG9uZVdpdGhDdXJyZW50UnVuID0g
dHJ1ZTsKICAgICAgICAgX3BoYXNlID0gRHJhZ0FuZERyb3BQaGFzZUNhbmNlbGxlZDsKKyAgICAg
ICAgW1tfZHJvcFNlc3Npb24gaXRlbXNdIGVudW1lcmF0ZU9iamVjdHNVc2luZ0Jsb2NrOl4oVUlE
cmFnSXRlbSAqaXRlbSwgTlNVSW50ZWdlciBpbmRleCwgQk9PTCAqKSB7CisgICAgICAgICAgICBV
SVRhcmdldGVkRHJhZ1ByZXZpZXcgKmRlZmF1bHRQcmV2aWV3ID0gbmlsOworICAgICAgICAgICAg
aWYgKFtfbGlmdFByZXZpZXdzIGNvdW50XSAmJiBbW19saWZ0UHJldmlld3Mgb2JqZWN0QXRJbmRl
eDppbmRleF0gaXNFcXVhbDpOU051bGwubnVsbF0pCisgICAgICAgICAgICAgICAgZGVmYXVsdFBy
ZXZpZXcgPSBbX2xpZnRQcmV2aWV3cyBvYmplY3RBdEluZGV4OmluZGV4XTsKKworICAgICAgICAg
ICAgVUlUYXJnZXRlZERyYWdQcmV2aWV3ICpwcmV2aWV3ID0gW1tfd2ViVmlldyBkcmFnSW50ZXJh
Y3Rpb25EZWxlZ2F0ZV0gZHJhZ0ludGVyYWN0aW9uOltfd2ViVmlldyBkcmFnSW50ZXJhY3Rpb25d
IHByZXZpZXdGb3JDYW5jZWxsaW5nSXRlbTppdGVtIHdpdGhEZWZhdWx0OmRlZmF1bHRQcmV2aWV3
XTsKKyAgICAgICAgICAgIGlmIChwcmV2aWV3KQorICAgICAgICAgICAgICAgIFtfY2FuY2VsbGF0
aW9uUHJldmlld3MgYWRkT2JqZWN0OnByZXZpZXddOworICAgICAgICB9XTsKICAgICAgICAgW1tf
d2ViVmlldyBkcm9wSW50ZXJhY3Rpb25EZWxlZ2F0ZV0gZHJvcEludGVyYWN0aW9uOltfd2ViVmll
dyBkcm9wSW50ZXJhY3Rpb25dIGNvbmNsdWRlRHJvcDpfZHJvcFNlc3Npb24uZ2V0KCldOwogICAg
IH0KIApAQCAtNTc2LDkgKzU4OCw4IEBAIC0gKHZvaWQpX2FkdmFuY2VQcm9ncmVzcwogICAgICAg
ICBmb3IgKFVJRHJhZ0l0ZW0gKml0ZW0gaW4gaXRlbXMpIHsKICAgICAgICAgICAgIFtpdGVtUHJv
dmlkZXJzIGFkZE9iamVjdDppdGVtLml0ZW1Qcm92aWRlcl07CiAgICAgICAgICAgICBVSVRhcmdl
dGVkRHJhZ1ByZXZpZXcgKmxpZnRQcmV2aWV3ID0gW1tfd2ViVmlldyBkcmFnSW50ZXJhY3Rpb25E
ZWxlZ2F0ZV0gZHJhZ0ludGVyYWN0aW9uOltfd2ViVmlldyBkcmFnSW50ZXJhY3Rpb25dIHByZXZp
ZXdGb3JMaWZ0aW5nSXRlbTppdGVtIHNlc3Npb246X2RyYWdTZXNzaW9uLmdldCgpXTsKLSAgICAg
ICAgICAgIEVYUEVDVF9UUlVFKCEhbGlmdFByZXZpZXcpOwotICAgICAgICAgICAgaWYgKGxpZnRQ
cmV2aWV3KQotICAgICAgICAgICAgICAgIFtfbGlmdFByZXZpZXdzIGFkZE9iamVjdDpsaWZ0UHJl
dmlld107CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShsaWZ0UHJldmlldyB8fCAhW193ZWJWaWV3
IHdpbmRvd10pOworICAgICAgICAgICAgW19saWZ0UHJldmlld3MgYWRkT2JqZWN0OmxpZnRQcmV2
aWV3ID86IE5TTnVsbC5udWxsXTsKICAgICAgICAgfQogCiAgICAgICAgIF9kcm9wU2Vzc2lvbiA9
IGFkb3B0TlMoW1tNb2NrRHJvcFNlc3Npb24gYWxsb2NdIGluaXRXaXRoUHJvdmlkZXJzOml0ZW1Q
cm92aWRlcnMgbG9jYXRpb246c2VsZi5fY3VycmVudExvY2F0aW9uIHdpbmRvdzpbX3dlYlZpZXcg
d2luZG93XSBhbGxvd01vdmU6c2VsZi5zaG91bGRBbGxvd01vdmVPcGVyYXRpb25dKTsKQEAgLTY2
MiwxMSArNjczLDE2IEBAIC0gKERyYWdBbmREcm9wUGhhc2UpcGhhc2UKICAgICByZXR1cm4gX3Bo
YXNlOwogfQogCi0tIChOU0FycmF5PFVJVGFyZ2V0ZWREcmFnUHJldmlldyAqPiAqKWxpZnRQcmV2
aWV3cworLSAoTlNBcnJheSAqKWxpZnRQcmV2aWV3cwogewogICAgIHJldHVybiBfbGlmdFByZXZp
ZXdzLmdldCgpOwogfQogCistIChOU0FycmF5PFVJVGFyZ2V0ZWREcmFnUHJldmlldyAqPiAqKWNh
bmNlbGxhdGlvblByZXZpZXdzCit7CisgICAgcmV0dXJuIF9jYW5jZWxsYXRpb25QcmV2aWV3cy5n
ZXQoKTsKK30KKwogLSAoTlNBcnJheTxVSVRhcmdldGVkRHJhZ1ByZXZpZXcgKj4gKilkcm9wUHJl
dmlld3MKIHsKICAgICByZXR1cm4gX2Ryb3BQcmV2aWV3cy5nZXQoKTsKQEAgLTc1Nyw4ICs3NzMs
MjQgQEAgLSAodm9pZCheKShCT09MLCBOU0FycmF5ICopKWRyb3BDb21wbGV0aW9uQmxvY2sKICAg
ICByZXR1cm4gX2Ryb3BDb21wbGV0aW9uQmxvY2suZ2V0KCk7CiB9CiAKKy0gKHZvaWQpc2V0U2Vz
c2lvbldpbGxCZWdpbkJsb2NrOihkaXNwYXRjaF9ibG9ja190KWJsb2NrCit7CisgICAgX3Nlc3Np
b25XaWxsQmVnaW5CbG9jayA9IGJsb2NrOworfQorCistIChkaXNwYXRjaF9ibG9ja190KXNlc3Np
b25XaWxsQmVnaW5CbG9jaworeworICAgIHJldHVybiBfc2Vzc2lvbldpbGxCZWdpbkJsb2NrLmdl
dCgpOworfQorCiAjcHJhZ21hIG1hcmsgLSBXS1VJRGVsZWdhdGVQcml2YXRlCiAKKy0gKHZvaWQp
X3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZGF0YUludGVyYWN0aW9uOihVSURyYWdJbnRl
cmFjdGlvbiAqKWludGVyYWN0aW9uIHNlc3Npb25XaWxsQmVnaW46KGlkIDxVSURyYWdTZXNzaW9u
PilzZXNzaW9uCit7CisgICAgaWYgKF9zZXNzaW9uV2lsbEJlZ2luQmxvY2spCisgICAgICAgIF9z
ZXNzaW9uV2lsbEJlZ2luQmxvY2soKTsKK30KKwogLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3
ICopd2ViVmlldyBkYXRhSW50ZXJhY3Rpb25PcGVyYXRpb25XYXNIYW5kbGVkOihCT09MKWhhbmRs
ZWQgZm9yU2Vzc2lvbjooaWQpc2Vzc2lvbiBpdGVtUHJvdmlkZXJzOihOU0FycmF5PE5TSXRlbVBy
b3ZpZGVyICo+ICopaXRlbVByb3ZpZGVycwogewogICAgIGlmIChzZWxmLmRyb3BDb21wbGV0aW9u
QmxvY2spCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>