Paul Berry
9aa88b1168
Add a const bool to make it easy to enable dumping the nullability graph
...
Change-Id: I6fc5c5f78cf1665f2551206979ebb5246f03c998
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104480
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-06-03 02:20:26 +00:00
Paul Berry
c229555d87
Rework the graph representation for the migration tool based on the design doc.
...
Change-Id: I1777042926f83cd2f95da6c6db315a8d49c64df1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104422
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-06-03 02:20:26 +00:00
Paul Berry
ca84a69609
Modify NullabilityNode to allow the 4 possible states from the design doc.
...
Change-Id: Ic28867227ad6080d693eff7576335e0a15bbe178
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104440
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-06-03 00:00:05 +00:00
Konstantin Shcheglov
519ddc1ac4
Document that AVAILABLE_SUGGESTION_SETS also turns on existingImports.
...
R=brianwilkerson@google.com
Change-Id: I053c68eb541358f0bbd891ca16f1c5628e701096
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104342
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2019-06-01 17:27:03 +00:00
Konstantin Shcheglov
577ab8d631
Issue 37129. Check for missing importedLibrary.
...
R=brianwilkerson@google.com
Bug: https://github.com/dart-lang/sdk/issues/37129
Change-Id: I60f5c1382cdb19988e786fff81e8450a6de3888c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104360
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2019-06-01 17:26:41 +00:00
Danny Tuppeny
190599de78
Skip LSP cancellation handling for Notification requests
...
Change-Id: I0edf6206db66ed07390dafcd5ea72bb2397468fc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-31 14:45:24 +00:00
Konstantin Shcheglov
a332c414f1
Switch server to using DeclarationsTracker for 'Import Library' quick fixes.
...
We need this to stop using UnlinkedUnit with summary2.
R=brianwilkerson@google.com , paulberry@google.com
Change-Id: Iaca2f19e6a168818e171f09e6eeda71a75854232
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103921
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-29 16:45:32 +00:00
Danny Tuppeny
fca2c82be0
Add support for cancelling requests in LSP server
...
Change-Id: I2a651b1e4f8509c7f10d245b2369aab842d08041
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103845
Commit-Queue: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-29 14:52:40 +00:00
Konstantin Shcheglov
da3ead02c1
Issue 3446. Recurse into attributes to find children widgets.
...
R=brianwilkerson@google.com , devoncarew@google.com
Bug: https://github.com/flutter/flutter-intellij/issues/3446
Change-Id: Ifa83367c68b406b342e0f99195015d98eaedb049
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103900
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2019-05-28 20:09:25 +00:00
pq
fc17a90bed
assist for sorting child properties last
...
Change-Id: Ia39f5b170858789897579f952ece03dcf6765e3f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103860
Commit-Queue: Phil Quitslund <pquitslund@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-28 20:00:05 +00:00
Danny Tuppeny
85c28b804d
Check LSP support for workspace/applyEdit before giving CodeActions that require it
...
Change-Id: I88af71be9788bd417a1f739f0f3e0efe930c2cd0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103842
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-28 14:10:26 +00:00
Danny Tuppeny
e4362612b0
Add support for dynamic registration for LSP
...
Change-Id: I55c7b2f7d683acab0f6aa4bdbcba3b155d2de32c
Change-Id: I6a0b13856053bd86e77637b9664c7fe41194c5f3
Change-Id: I7472cf93efc29585ccbcbd1e6c7b9f703872b3c5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103532
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-27 17:36:20 +00:00
pq
5b200ea3dc
remove unused import
...
Change-Id: Ib4b92a3cf453ed4f8945f62bf4213f03ceb8910d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103700
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Phil Quitslund <pquitslund@google.com >
2019-05-25 15:33:35 +00:00
Jaime Wren
03e415a4e8
Update the hover 'containingLibraryName' to not include the 'file:///' prefix.
...
This is a follow up on a comment in the previous change https://dart-review.googlesource.com/c/sdk/+/103481/ .
Change-Id: I0f377d6c7d68d55464a4e111a6a65715a82e0591
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103546
Reviewed-by: Jaime Wren <jwren@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Jaime Wren <jwren@google.com >
2019-05-24 21:54:56 +00:00
Konstantin Shcheglov
4979a51a9c
Add information about existing imports to completion response.
...
This adds quite a lot of information though, because we send many
strings.
Before: 20686 characters.
After: 55345 characters.
Theoretically we could do better, and send information about existing
imports only once as well, so when the user continues typing in a
single file, without touching imports, we don't send any new data
about imports (maybe just a confirmation that it is still the same).
But I'm not sure if this is a worthwhile optimization.
Actually, even included suggestion sets have similar property - they
don't change for a given file, unless there are changes to other
libraries which we might want to include.
R=brianwilkerson@google.com
Change-Id: I2f55e2dc85508849146aa39eb279beabaec937c0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103561
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-24 21:35:06 +00:00
pq
e42d4a1d89
fix missing returns in lambdas
...
Change-Id: I5005ffc057749468844d47e8e5c195871586bd57
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103601
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Phil Quitslund <pquitslund@google.com >
2019-05-24 19:24:02 +00:00
Devon Carew
9081f28fbb
[analyzer] fix a copy paste doc issue and 2 unused imports
...
Change-Id: I20f4ae5454c2bceafd3b86e279357dee3b321006
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103644
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Devon Carew <devoncarew@google.com >
2019-05-24 16:31:25 +00:00
Dan Rubel
dfbc3923e4
add default CompilerContext in analysis server
...
This should uncover the underlying error occurring in
Fix https://github.com/dart-lang/sdk/issues/37055
Change-Id: I633da211b943e5c4262a2f3d83ef0a2217c5b8a7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103562
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2019-05-23 22:46:15 +00:00
Konstantin Shcheglov
5822645e66
Support for 'Wrap with Xyz' for expressions in ExpressionFunctionBody.
...
R=brianwilkerson@google.com
Bug: https://github.com/flutter/flutter-intellij/issues/3500
Change-Id: I9e14d6cd1a79070fd489740a881199707be83e90
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103563
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2019-05-23 20:00:26 +00:00
Jaime Wren
cd2188f2f5
DAS change in hover behavior- the containingLibraryName now returns the URI of the containing library instead of the (possibly non-existent) library name
...
Change-Id: Ief2a7615b92ca635c696d48f907677bae538577b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103481
Reviewed-by: Jaime Wren <jwren@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-23 19:06:19 +00:00
Konstantin Shcheglov
cfdcfe2bfe
Update DeclarationsTracker when a context options change.
...
E.g. when .packages changes, we want to re-scan the context for new
available libraries. We also don't want to discard all context, and
resend everything.
R=brianwilkerson@google.com
Bug: https://github.com/Dart-Code/Dart-Code/issues/1723
Change-Id: I19ee71c1d021fb9bcda9d02d86b7cbb078704aa7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103320
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2019-05-21 18:43:36 +00:00
Konstantin Shcheglov
181685b852
Allow disabling individual server features.
...
Change-Id: I4d06eaf76300c6784b88bd64ad322c306a276488
Bug: https://github.com/dart-lang/sdk/issues/36881
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103182
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-21 18:40:26 +00:00
Danny Tuppeny
88f139db68
Fix NPEs when processing unknown kinds in LSP
...
Fixes https://github.com/dart-lang/sdk/issues/37016 .
Change-Id: I72eae50a03bb2c73678b65a07e6924a2a53d137e
Bug: https://github.com/dart-lang/sdk/issues/37016
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103131
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-21 13:30:10 +00:00
Danny Tuppeny
022adc5bc3
Implement using suggestion sets for LSP completions
...
Change-Id: I66d725c09492040be5e621d80270b12a21bb8192
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102704
Commit-Queue: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-20 10:09:41 +00:00
Danny Tuppeny
0f24e4b277
Wire up LSP completion resolution provider + sendWorkspaceEdit command
...
Change-Id: I424b4d9bbc64f6fea7a4d9b06e2180b3fbd21f86
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102703
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-20 10:09:41 +00:00
Danny Tuppeny
7be23977f1
Minor LSP tweaks in preperation for included suggestionSets
...
Change-Id: I9dff56139754b8a182e906d64dd0bcc009c4b6fc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102701
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-20 10:09:41 +00:00
Paul Berry
42334a7f67
Infer when the bound of a type parameter needs to be nullable.
...
Change-Id: I6c500318a66e05a0b3d10c85f07660dfe37339ea
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103000
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-05-17 20:41:11 +00:00
Danny Tuppeny
8209013be3
Fix DartDoc section in Diagnostics server for LSP
...
Change-Id: I8bb40a08b7b6aa53c962bc5a86eb3e68a330a87c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102620
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-16 13:34:47 +00:00
Danny Tuppeny
6805bb52ea
Add implementation/tests for textDocument/Implementation
...
Fixes https://github.com/dart-lang/sdk/issues/36896
Change-Id: Ie450c6c5257ac13aa3c7b48343aa8b015b1dc4d8
Tweak tests to require all, plus fix empty classes
Change-Id: Iefff7e24c6b965f0a1bc5abf8adbac26ad38e3a0
Add implementation/tests for textDocument/Implementation
Change-Id: I640379d83aeb9baa73d04d98d39147e2b748d6c3
Bug: https://github.com/dart-lang/sdk/issues/36896
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102366
Commit-Queue: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-15 09:08:28 +00:00
Danny Tuppeny
3a7ce7a646
Enable declarations tracker for LSP to support dart doc macros
...
Change-Id: I614be91ecf7a1afc377afeee70e559cff324dc61
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102368
Commit-Queue: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-05-15 08:16:18 +00:00
Danny Tuppeny
cdcc387084
Add LSP custom notifications for analyzing status
...
Change-Id: I0d26d274c9ccc472da81e45d0c9170104bbd9414
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102370
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-15 06:35:48 +00:00
Paul Berry
f440f77dd3
Store the nullability graph in the nullability nodes rather than in maps.
...
This should improve performance by avoiding map lookups.
Change-Id: Ic22a4be7486be1b8e9c164e9133c81a4851146a3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102440
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-05-13 22:31:44 +00:00
Paul Berry
3ecb89ba8c
Move NullabilityGraph into nullability_node.dart.
...
This will allow NullabilityGraph and NullabilityNode to have shared
access to private data without having to expose it to all other
libraries.
Change-Id: Idbef9a60cdeb273cd5739c45d501370d89b653df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102403
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-05-13 22:31:44 +00:00
Paul Berry
6080e546c9
Rearrange NullabilityNode class hierarchy.
...
Instead of making immutable nullability nodes derive from mutable ones
(forcing the mutation method to be overridden to thrown an exception),
we make sibling classes for mutable and immutable nodes. This will
allow additional mutation methods to be added in a less kludgy way.
Change-Id: Ib147583e0a9c4b56333ad9c56c3c725f02ab19ad
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102402
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-05-13 22:31:44 +00:00
Paul Berry
bed74d6e97
Remove NullabilityGraph._upstream.
...
Its only purpose was to make NullabilityGraph.getUpstreamNodes fast to
compute, but that function was only used in unit tests anyway so there
was no need for it to be fast. (Minor exception: it was also used in
an assert statement, but I was able to change that to
Nullabilitygraph.getUnconditionalUpstreamNodes).
Change-Id: I8be18560c2f454908eb0e31d198fd22961a89278
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102388
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-05-13 19:23:51 +00:00
Paul Berry
228df22dbf
Remove the old constraint variable based nullability migration logic.
...
Change-Id: I4fe2836160acf5adfd805a327616880f857e9b7a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102387
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-05-13 16:38:01 +00:00
Paul Berry
83607564ea
Switch nullability migration over to the new algorithm based on the new nullability graph.
...
Change-Id: I1cbfba8d3d46020d8e943109e582d61315781561
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102386
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-13 16:38:01 +00:00
Paul Berry
354bfb5bab
Remove a few more usages of NullabilityNode._nullable.
...
This will allow us to switch to the new nullability migration algorithm.
Change-Id: I0246275aa07243f809fa490fdeb6b729e407c9c5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102385
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-13 16:38:01 +00:00
Paul Berry
b05190499d
Add new nullability propagation logic based on the NullabilityGraph.
...
For now, we verify that the new logic produces the same results as the
old logic. In follow-up CLs, the old nullability propagation logic
will be removed.
Change-Id: I2004067093e1f5a5cdf51786ed409058707c4a49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102384
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-05-13 15:43:40 +00:00
Paul Berry
f3aca11478
Record not-supplied named parameters in the nullability graph
...
Change-Id: Ie9656b6de3e1545f9021e7d1d8d6747c51f1e342
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102400
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-13 15:43:40 +00:00
Paul Berry
2fbc446d23
Record information about guards in the nullability graph.
...
Change-Id: I169133b85e0405d1ff6b3384a6d99c7fcb33a0fd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102382
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-13 15:43:40 +00:00
Paul Berry
0ce9cb7267
Encode unconditional control flow information in nullability graph.
...
Change-Id: I598e05b61d6639d72ae6f84ab48f4e4051c87014
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102302
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-13 15:43:40 +00:00
Paul Berry
8a8a700336
Fix nullability of inferred dynamic types
...
Change-Id: Ib27c5ade4a57bbfa73c528adbafaaa19be53c97c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102301
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-13 15:43:40 +00:00
Paul Berry
9bbc06fddb
Add the ability to do a debug dump of a nullability graph.
...
Change-Id: Ia3536423349ded8810c06ef2d4a631607273af88
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-13 15:43:40 +00:00
Danny Tuppeny
a779db0813
Update LSP spec to latest
...
Change-Id: I6f7ff3c6707f992aa618ad172e81857153b75795
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102360
Commit-Queue: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-13 15:11:15 +00:00
Danny Tuppeny
b7521f5e1b
Fix lints not appearing when using LSP Server
...
Change-Id: Ib3b4396a611be32b91b08d68c962302899a1ad88
Bug: https://github.com/dart-lang/sdk/issues/36931
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102340
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-13 15:03:30 +00:00
Danny Tuppeny
9472745446
Change error code for server shutting down
...
See https://github.com/Microsoft/language-server-protocol/issues/684#issuecomment-477215334 .
Change-Id: I9e45dd27ea914af8bc3b936e9885c113211c50ce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102361
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-13 15:03:11 +00:00
Danny Tuppeny
f7e288e3ad
Return empty responses instead of errors for non-Dart files in LSP server
...
Previously we could return "invalid path" responses for any non-Dart files. This allows clients to send requests for other files and just successful (though empty) responses.
Change-Id: I192e83ac2ebd2124c03c22e3e048a066cfd33f17
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101990
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-13 09:04:36 +00:00
Konstantin Shcheglov
6dd7007b48
Tweak CONVERT_TO_PACKAGE_IMPORT assist.
...
There were a (probably very rare) case of invalid URI issue.
I also renamed the ID and method to be consistent with the message.
R=brianwilkerson@google.com , jwren@google.com
Change-Id: Ie97b1f81c78b67565d7831d532b7a28800db41a9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102246
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-12 18:08:47 +00:00
Paul Berry
b8050f9322
Make NullabilityNode.nullable private.
...
This will help ensure that we don't accidentally make more use of it
before removing the constraint variable migration implementation
entirely.
Change-Id: I6cd898d1a3b2f2a4e9df9ea22c17ca77d3119567
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101741
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-05-10 22:07:08 +00:00