Commit Graph
62 Commits
Author SHA1 Message Date
ZacharyZhang-NY b39097cd3f documents: Shift-Tab takes four columns out of any mix of spaces and tabs
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 10m10s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 16:58:50 -04:00
ZacharyZhang-NY 58227cdc2f documents: measuring and export load gpui's bundled faces and map generic families as it does
CI / platforms (windows-latest) (push) Failing after 11s
CI / site (push) Successful in 25s
CI / crate (push) Failing after 11m33s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 12:45:21 -04:00
ZacharyZhang-NY a0011772ae documents: export and measuring choose fonts as gpui draws: a missing family falls to sans-serif, then any face
CI / platforms (windows-latest) (push) Failing after 11s
CI / site (push) Successful in 26s
CI / crate (push) Failing after 11m39s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 12:23:55 -04:00
ZacharyZhang-NY 50a59d2620 documents and typography: SVG sizes and frames read with the system's fonts, as drawn
CI / platforms (windows-latest) (push) Failing after 9s
CI / site (push) Successful in 23s
CI / crate (push) Failing after 12m18s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 11:55:54 -04:00
ZacharyZhang-NY 8234fcdeb2 typography and documents: an exported formula frames its outlined text; rendered modes have no source selection
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 11m54s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 11:15:52 -04:00
ZacharyZhang-NY 3bbbd05f38 typography: an exported formula's text becomes outlines, or its missing letter is an error
CI / platforms (windows-latest) (push) Failing after 9s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 12m23s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 10:55:53 -04:00
ZacharyZhang-NY ff9c0f88d3 documents: a diagram letter no font has is an export error
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 12m5s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 10:33:03 -04:00
ZacharyZhang-NY c7a86079fc documents: the selected Markdown, in source or an open block
CI / platforms (windows-latest) (push) Failing after 9s
CI / site (push) Successful in 21s
CI / crate (push) Failing after 11m47s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 10:06:57 -04:00
ZacharyZhang-NY fd8c98f3b1 documents: the whole-file parse options are public, for export
CI / platforms (windows-latest) (push) Failing after 7s
CI / site (push) Successful in 21s
CI / crate (push) Failing after 11m35s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 10:01:55 -04:00
ZacharyZhang-NY cec9689f26 typography and documents: formula and diagram SVG for export; a diagram label without a font is an error
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 12m32s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 09:56:38 -04:00
ZacharyZhang-NY 7ed4ea8323 editor: typewriter centering keys on view and line heights; a placement resets the editor's centering too
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 12m26s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 09:28:47 -04:00
ZacharyZhang-NY cf9cc1971c editor: typewriter room as rows, so drawing and text queries share one origin; a placement resets centering
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 10m53s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
2026-10-12 09:13:49 -04:00
ZacharyZhang-NYandClaude Opus 5.5 f102ea0b6c documents and editor: typewriter room at both ends, open blocks scaled, a resize re-centers
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 25s
CI / crate (push) Failing after 11m6s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 08:54:41 -04:00
ZacharyZhang-NYandClaude Opus 5.5 508fee9d15 documents and editor: a writing view - measure, font, scale, focus fading, typewriter centering
CI / platforms (windows-latest) (push) Failing after 9s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 12m26s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 08:25:45 -04:00
ZacharyZhang-NYandClaude Opus 5.5 e89fb32f43 documents: reset keeps the caret and the top line
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 21s
CI / crate (push) Failing after 11m55s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 07:48:16 -04:00
ZacharyZhang-NYandClaude Opus 5.5 d126a7e7f7 documents: dropped files and pasted pictures go to the owner; insert puts text at the caret
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 21s
CI / crate (push) Failing after 11m49s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 07:24:15 -04:00
ZacharyZhang-NYandClaude Opus 5.5 cd16b204f0 documents: a comment within ten words
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 21s
CI / crate (push) Failing after 12m1s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 07:19:04 -04:00
ZacharyZhang-NYandClaude Opus 5.5 4fb59bb8e1 documents: an empty task ends a list; Shift-Tab takes a tab out; a table on a blank indented line is a table
CI / crate (push) Failing after 11m41s
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 07:17:24 -04:00
ZacharyZhang-NYandClaude Opus 5.5 e162082f6f documents: lists go on inside quotes and after tabs; a waiting match lapses with its text and yields to a newer one
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 21s
CI / crate (push) Failing after 11m32s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 07:02:59 -04:00
ZacharyZhang-NYandClaude Opus 5.5 edc328aadf documents: table edits keep extra cells and quote marks and say why they refuse; preview takes no edits; lists go on only in list items; a match waits for its text
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 11m29s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 06:40:36 -04:00
ZacharyZhang-NYandClaude Opus 5.5 ce4a1e9cb5 documents: lists go on, block lines shift, tables change, matches show, fences color by language
CI / platforms (windows-latest) (push) Failing after 9s
CI / site (push) Successful in 21s
CI / crate (push) Failing after 11m41s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
The document carries Markdown's editing tools for ElyMark (MARK-06):
Enter continues a list item or ends an empty one, Tab and Shift-Tab
shift an open block's lines, table rows and columns come and go as
one undo step, a match shows in any mode, replacements are one step,
and a fenced block colors by its language.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 06:14:34 -04:00
ZacharyZhang-NYandClaude Opus 5.5 2e196a10a7 documents: a picture shrinks within a narrow table cell; tree tests in their own file; test comments within ten words
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 11m42s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 05:23:55 -04:00
ZacharyZhang-NYandClaude Opus 5.5 4801555e0d documents: pictures draw in table cells; Markdown-path comments within ten words
CI / crate (push) Failing after 11m44s
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 21s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
A cell holds blocks, split at its pictures as a paragraph is. A picture
takes its natural width, capped by its container.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 05:12:16 -04:00
ZacharyZhang-NYandClaude Opus 5.5 bbb607106a documents: link addresses stay out of the log; tests for the link rules and the extended syntax
CI / crate (push) Failing after 11m19s
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 21s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 04:44:47 -04:00
ZacharyZhang-NYandClaude Opus 5.5 639521e109 documents: one undo history; a block's own never runs
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 11m33s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Undo or redo in an open block writes it back as one step and steps the
document, so redo survives mode switches and further undos.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 04:39:09 -04:00
ZacharyZhang-NYandClaude Opus 5.5 a3d9f089a3 documents: undo and redo leave a block only past its own history; typing lands after undo empties the document
CI / crate (push) Failing after 11m46s
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 21s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 04:28:33 -04:00
ZacharyZhang-NYandClaude Opus 5.5 362a0fc9fa documents: undo in an untouched block steps the document; visual after preview opens an empty end
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 11m33s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 04:14:19 -04:00
ZacharyZhang-NYandClaude Opus 5.5 6f0401e967 documents: an empty visual document opens its end on focus
CI / platforms (windows-latest) (push) Failing after 9s
CI / site (push) Successful in 22s
CI / crate (push) Failing after 11m48s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Typing in a new file lands with no press.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 03:52:55 -04:00
ZacharyZhang-NYandClaude Opus 5.5 f59c9f7f50 documents: a text past the read limit drops the old read
CI / crate (push) Failing after 11m24s
CI / platforms (windows-latest) (push) Failing after 9s
CI / site (push) Successful in 31s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 02:49:00 -04:00
ZacharyZhang-NYandClaude Opus 5.5 69b11d7852 MarkdownDocument: typed source reads after a pause off the main thread; texts past 2 MiB are never read
CI / crate (push) Failing after 11m23s
CI / platforms (windows-latest) (push) Failing after 9s
CI / site (push) Successful in 25s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 02:33:49 -04:00
ZacharyZhang-NYandClaude Opus 5.5 abac8b41b3 MarkdownDocument: numbered top-line asks, clamped when placed, reveal waits for its read; tests run the frame callbacks
CI / platforms (windows-latest) (push) Failing after 9s
CI / site (push) Successful in 24s
CI / crate (push) Failing after 11m58s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 02:02:56 -04:00
ZacharyZhang-NYandClaude Opus 5.5 433c38fb2d place: a shorter comment
CI / site (push) Successful in 28s
CI / crate (push) Failing after 11m37s
CI / platforms (windows-latest) (push) Successful in 6m14s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 01:40:47 -04:00
ZacharyZhang-NYandClaude Opus 5.5 33ddb45f31 MarkdownDocument: blocks open on a read of the text as it is, top lines wait for their read and keep their place in tall blocks
CI / crate (push) Failing after 26m58s
CI / site (push) Successful in 46s
CI / platforms (windows-latest) (push) Successful in 6m17s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 01:40:41 -04:00
ZacharyZhang-NYandClaude Opus 5.5 fc181b44c2 MarkdownDocument: one caret for every mode, pressed blocks kept across write-backs, preview read only, keyboard reach, history capped on every path
CI / site (push) Successful in 25s
CI / platforms (windows-latest) (push) Successful in 4m37s
CI / crate (push) Failing after 26m50s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 01:14:06 -04:00
ZacharyZhang-NYandClaude Opus 5.5 2b6f5513aa MarkdownDocument: a Markdown file in one CodeEditor, shown visual, source, split or preview
CI / site (push) Successful in 34s
CI / platforms (windows-latest) (push) Successful in 5m7s
CI / crate (push) Failing after 26m45s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Visual draws the top-level blocks in a gpui list; a pressed block opens as
its source and its typing is the text at once, written back as one undo
step. CodeEditor takes the owner's line colors, resets with a fresh
history and keeps at most 64 MiB of undo text. MarkdownMode gains Preview.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-12 00:44:17 -04:00
ZacharyZhang-NYandClaude Opus 5.5 ab9a14c692 Markdown pictures: freed with their elements, glyphs whole, failures keep the source, file URLs parsed, Mermaid labels in Ely's ink
CI / site (push) Successful in 23s
CI / crate (push) Failing after 27m31s
CI / platforms (windows-latest) (push) Failing after 9s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-11 23:59:56 -04:00
ZacharyZhang-NYandClaude Opus 5.5 d5ecc5a69e Markdown: display math through RaTeX, Mermaid through mermaid-rs-renderer, pictures from the owner's folder
CI / crate (push) Failing after 25m44s
CI / site (push) Successful in 32s
CI / platforms (windows-latest) (push) Successful in 4m47s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Latex typesets with RaTeX to outlined SVG drawn by gpui's SvgRenderer at the
window's scale, loaded as an asset off the main thread. Diagram draws a
mermaid block in Mermaid's theme for the mode. MarkdownRenderer::base names
the folder pictures load from; data addresses decode, web ones stay unloaded.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-11 23:38:22 -04:00
ZacharyZhang-NYandClaude Opus 5.5 508cc55af6 Markdown: nested definitions resolve, images in styles and links stay images, CR soft breaks, reference links highlight
CI / crate (push) Failing after 26m21s
CI / platforms (windows-latest) (push) Failing after 8s
CI / site (push) Successful in 22s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-11 23:19:28 -04:00
ZacharyZhang-NYandClaude Opus 5.5 fcad0ff8e9 Markdown: MarkdownRenderer, MarkdownEditor, highlights and block ranges read with markdown-rs
CI / site (push) Successful in 32s
CI / platforms (windows-latest) (push) Successful in 4m40s
CI / crate (push) Failing after 29m18s
CI / platforms (ubuntu-24.04) (push) Canceled after 0s
The tree comes from markdown::to_mdast with GitHub's flavor and math.
References resolve against their definitions, an image splits its
paragraph, a one-line $$ formula stands as a block. BlockEditor's
import and export keep pulldown-cmark.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-11 23:07:14 -04:00
ZacharyZhang-NY d24984cc38 BlockEditor selects across blocks: drag or Shift-press, then type, paste, delete, cut, copy as Markdown or break, one undo step (#7) 2026-10-08 21:47:08 -04:00
ZacharyZhang-NY f5eb82ee1b BlockData::to_markdown and from_markdown: a document of blocks as GitHub Markdown and back, each field's inline Markdown kept as written (#7) 2026-10-08 21:47:08 -04:00
ZacharyZhang-NY 5490869f23 BlockEditor fills its box and scrolls with a scrollbar, bringing the caret into view as it moves; a ScrollArea keeps a wheel it can use, so the page behind stays (#7) 2026-10-08 21:47:07 -04:00
ZacharyZhang-NY 10788579c9 Panics · P21 Documents: stale block keys, cells and kinds change nothing; replaced text drops visual presses; nested images, versions and find hits hold 2026-10-06 23:39:51 -04:00
ZacharyZhang-NY 80c46b13d4 Documents · TemplatePicker: one Tab stop, arrows and Enter, list semantics, builtin copy 2026-10-05 13:13:09 -04:00
ZacharyZhang-NY 59c73f18f2 CI · the crate's tests and the gallery on Linux, Windows and macOS, arm64 and x86_64; tests type the platform's secondary key 2026-10-04 00:00:43 -04:00
ZacharyZhang-NY 4c3ed1bbb9 Port · Build: Zed's gpui at 1a28cff
gpui and gpui_platform now come from Zed's repo by git at 1a28cff,
the code gpui-pre 0.3.7 republishes, so the gallery can later build
for the browser. gpui takes stacker, as 0.2.2 always did, and
gpui_platform takes font-kit, without which macOS draws no text;
runtime_shaders moves to gpui_platform.

The API moved: focus, blur and Tab steps take cx, Corner is Anchor,
shaped lines paint with an alignment, defer_draw takes a content
mask, the inspector registers a factory, async updates return their
value, and wrapped lines are shared, not cloned. Updates through a
window context go through the window, so a closed window still ends
them as it did.

Where the new gpui behaves differently, Ely keeps its old intent.
Holds and reveals under a resting pointer survive typing through
gpui's input-modality-independent hover; previews the keyboard also
moves keep the default, and the calendar's leave ignores a key press.
Enter reaches a button inside the code editor, since gpui now arms a
key click on the press. The event logger skips a lone modifier. A
video and an image grid keep their shape in a flex column under
taffy 0.13, as a picture does.

AGENTS.md records the new stack and the rules this port changes; the
rest of the old gpui and taffy rules are re-tested in T44c.
2026-09-28 20:30:17 -04:00
ZacharyZhang-NY 81e73b79c1 Capture · Roots: roots drop w_full; hosts give the width
145 component roots drop w_full, the early returns included. Three
field rows keep it, Input, InputGroup and TagInput: stretched without
a width, taffy 0.9 laid the field's flex_1 share at no width in the
template picker at 280px, and the placeholder drew nothing. Container
keeps it, since mx_auto needs a width to fill.

Hosts that relied on a root's width now give it: MessageList boxes
each row at the list's width, the splash gives its bar the column's,
and test stages that mount a component as the window's root sit in a
size_full box. Tests hold a narrow row across the list and the splash
bar across its column; each goes red without its fix.

The gallery gains --narrow <px>, which lays each page in a padded
card at that width and shoots it without its script. The page
header wraps: the title takes the room and the theme switcher drops
below, where a long summary used to push it past the edge. A file
panel step waits for the panel to become key instead of a fixed
pause, which lost a race in a capture.
2026-09-28 13:07:22 -04:00
ZacharyZhang-NY d3cfc71ead Theme · Platform: one platform for buttons and caps, icon themes, frosted panes
theme::Platform moves out of typography and shell's ControlsStyle folds
into it; the theme's platform starts as the system's. Window buttons Ely
draws, the title bar's layout and every key cap follow it, secondary
included, through typography::keys::keystroke; a title bar whose buttons
the OS draws follows the OS. primitives::IconTheme lays an owner's rules
by file name and extension over Ely's map, for every file icon.
shell::Vibrancy fills a pane with the palette's new glass, translucent
so a window opened Blurred shows its backdrop, solid under high contrast.
gpui 0.2.2 has no Mica; that line stays blocked.
2026-09-27 17:41:15 -04:00
ZacharyZhang-NY 1633bc9293 Project · Tasks: priorities, issues, statuses, assignees, task rows
A new chapter, src/project. PriorityIndicator shows how urgent a task
is in three bars, urgent in red, its words in a tip or beside it.
IssueIdBadge names an issue by its team's key and number, as ENG-123.
StatusSelect picks a status from the workflow, each with its mark, and
AssigneePicker picks a person or no one; DueDatePicker is the forms
DatePicker. TaskItem is a task in a row: its box, priority and issue,
its title, then its due day, red when past and still open, and who has
it. TaskList puts them in a SelectableList: arrows move, Enter opens,
and a box's press or keys stay at the box. SubtaskList is the
documents Checklist, which gains a field that adds a step on Enter.

Along the way: forms::Choice::avatar leads a person's row with their
initials, in lists and in a Select's trigger; ListItem::struck strikes
a closed task's title; typography::Ellipsis now shapes with the text
style's run, so a strike or underline on its box shows; two Lucide
icons, circle-dashed and circle-dot-dashed.
2026-09-27 04:48:54 -04:00
ZacharyZhang-NY 51ade29032 Primitives · a raise keeps its state under its owner's id
A raise inside another was namespaced by its place in the layer's
queue, so one that came before it moved its id path and rebuilt its
keyed state and focus: an open date popup would lose its month when a
tip appeared. raise now takes its owner's id and draws under it, and
float and float_height pass the owner's id on from every call site.
A test holds a focused box in a raise while another comes before it.
2026-09-27 02:23:05 -04:00