Source
Total Memories
86,585
across all sources
Sources
16
active ingestion sources
Agents
25
with classified memory
Health
3h ago
last ingestion
By Memory Type
Fact
59,560
Event
17,448
chat-exchange
9,263
Pattern
78
provenance
77
Decision
48
Architecture
41
Feedback
40
pre-compact-snapshot
15
Preference
13
subagent-output
2
By Agent (top 15)
pieces
61,109
chat
9,211
merlin
666
oliver
401
carlos
297
ava
213
einstein
183
dan
135
frankie
108
picasso
80
sherlock
68
vox
67
spielberg
47
shakespeare
41
queen
38
Recent Ingestions
[PRE-COMPACT SNAPSHOT | project=mikem | trigger=auto] [USER] Yes, but collectively, get me a full summary on where the fuck we are on my skills thing, because that was the other chat I'm trying to pick up on. I'd rather pick up on it here, but if there's a way to run here and be talking to Hermes, whoa man, please let's set that up! Even if it's multiple pains, please let me know the best way, because you're talking to Hermes right now, right? How can I do it? [ASSISTANT] Two things: the full skills status, and yes, I can literally talk to Hermes from here. Let me prove the second one while I pull the first. I'm reading the authoritative status doc Hermes just wrote, and sending Hermes a live message from this session so you can see the bridge work. [ASSISTANT] [tool_use:Bash] [ASSISTANT] [tool_use:Bash] [ASSISTANT] The Hermes bridge works. You just saw it: I sent a message from this Windows session straight into the Mac Hermes pane, and it is replying live right now (`gpt-5.6-sol`, reflecting). So yes, I am talking to Hermes, and you can too. More on that below. But your Discord alert jumps the line. `RuntimeError: all candidate generators failed` on job `f4987c47` is the skill-eval v2 loop dying. Digging into that exact failure now. [ASSISTANT] [tool_use:Bash] [ASSISTANT] Found it: `worker.py:181` raises when every candidate generator fails, and there's already a `candidates.py.bak` comment saying a prior repoint tried to fix this exact failure. It's still failing, so the earlier fix did not hold. Reading the generator code + config + checking whether the local model backend is even up. [ASSISTANT] [tool_use:Bash] [ASSISTANT] The generators use your **logged-in CLI models** (claude -p opus/fable, codex exec), not metered keys. The error fires when every voice returns an error. So the real question is: are those CLI calls actually working on the Mac right now? Let me reproduce the exact call the generator makes and capture the real failure. [ASSISTANT] [tool_use:Bash] [ASSISTANT] CLI voices **work right now** (opus returned `OK`, codex 0.144.1 present), and `candidates.py` was already repointed off the weak local models on 2026-07-13. So the failures are stale, from before that fix plus the worker being down. This needs a focused re-run-and-verify loop on the Mac, which is exactly the kind of iterative remote debugging I should dispatch rather than piecemeal in your chat. Sending Merlin at it now, and reading Hermes' reply to my relay. [ASSISTANT] [tool_use:Agent] [ASSISTANT] [tool_use:Bash] [ASSISTANT] Two big wins here: the Hermes bridge round-trip fully worked, and I have your complete skills picture. Plus Merlin is already on the Discord error. ## šŸŽ™ļø Yes, I am talking to Hermes, and here is the proof I relayed your question into the live Hermes pane from this Windows session, and Hermes answered back through the socket. Its actual reply: > - Speed6 expanded production from 5 to 21 verified skills, all 358 runnable records accounted for > - Remaining: 249 verified but not promoted, 18 need repair, 70 quarantined > - Release controls passed 22 tests, TypeScript checks, MCP audits, browser verification, rollback backups retained > - Skills Command Center healthy, but Discovery Lab has 2 queued + 1 stale job, all evaluator workers offline > - Highest-value next action: restore the Discovery Lab evaluator lane before Wave 3 That is a real two-way channel, working right now. ## šŸ“Š Where the skills thing actually stands (2 systems) | System | State | Numbers | |---|---|---| | **🟢 Skills Command Center / Production MCP** (`skills.imerlino.com/mcp`) | **Healthy, campaign complete** | 358 total skills, **21 live in production**, 270 evidence-verified, 249 verified-not-promoted, 18 need repair, 70 quarantined | | **šŸ”“ Discovery Lab + Karpathy eval loop** (`lab.merlinoai.com`) | **Broken, fix running** | 4,690 finds (3,250 analyzed) healthy, but eval loop: 1 success vs 348 errors, workers offline | Speed6 promoted 16 skills across 2 waves this run (6 + 10), 22/22 tests passed, rollback backups kept, reported to Discord #deploys. **Both Hermes and I independently landed on the same #1 next action: restore the Discovery Lab evaluator lane.** That is the exact thing throwing your Discord error, and **Merlin is on it now** (root-causing job f4987c47, applying the crash-on-bad-skill fix, reloading the worker, re-running the stale jobs). You will get a report when it is fixed and verified. ## šŸ•¹ļø How you talk to Hermes going forward | Way | What it is | Setup | |---|---|---| | **1. Through me** | You type here, I relay into the pane and read the reply back. Just demonstrated. | Zero. Works now. | | **2. Direct attach** | `herdr --remote mac` puts you straight in the live Hermes pane, typing to it yourself | Needs herdr on your Windows box (beta) | | **3. Cockpit** | One herdr workspace with Hermes + Claude + Codex panes side by side | Build the cockpit workspace | The Mac herdr server is up and reachable, so option 2 works the moment herdr is on your Windows machine. **ā–¶ Want me to check/install herdr on this Windows box** so you get the direct Hermes seat (option 2), or are you good driving it through me for now?
pre-compactpre-compact-snapshotava
Jul 13, 10:22 PM
[USER] Save all this in the Rock Stars folder. Save a note: the spacing on this looks a little crazy, but for now, just put it all in the Rock Stars folder so I can close this out. [ASSISTANT] āœ… **Saved and closed out.** Everything's in `F:\Projects\seo-rockstars\`. **Your note is written:** `webinar\CLOSEOUT-NOTE.md`, it records that the spacing still looks a little crazy and needs another polish pass, plus a full inventory and resume list. Quick recap of what's in the folder: - `webinar\deck-brand\` = the current on-brand dark deck (the one to use) + live URL - `Perfect-Webinar-Template.pptx` (emailed + Google Slides copy) + the source books, framework, brand assets, and the older deck versions - `campaign-2026\` = all the marketing assets **To pick back up:** open `CLOSEOUT-NOTE.md`, it has the 4 open items (spacing polish, fill the offer slides with Greg, push the dark design into the editable Google Slides, and the site's 40-vs-100 seat fix). You're good to close it out.
chat-stopchat-exchangeava
Jul 13, 10:12 PM
[USER] Okay, we got a little bit distracted. This chat is supposed to be in the master brain folder and be about memory. All this, you can add to the SEO rockstars folder, and then get back to what we were doing so I could have a summary and then save and start fresh. [ASSISTANT] āœ… **Saved to the cloud. Clear to start fresh.** ## šŸ“¦ What I did with your last message - šŸŽ¬ UGC video: already lives in `F:/Projects/seo-rockstars/ugc-videos/` (SEO Rockstars work, never touched this repo). Noted it as "parked side-work" in the handoff so a fresh chat won't confuse it with memory work. - 🧠 Wrote the memory-state handoff and pushed it to cloud (commit `deec0a8`). - šŸ›” Did NOT clobber the existing BMM handoff that was in the cloud file, kept it below as prior. ## šŸ”— Resume from anywhere (agnostic URL) ``` https://raw.githubusercontent.com/mmerlino23/merlino-memory/main/SESSION-CONTINUE.md ``` ## ā–¶ When you open the fresh chat (in master-brain folder) The one real lever waiting: **per-agent / per-project memory banking** (segment the `scope` tags so memory injects per agent/project). Free, SQL-only. šŸ”“ **Your only human to-do: rotate the 3 exposed keys** (Anthropic, OpenAI, GitHub) that the scrub redacted. One honest note: I saved to the GitHub cloud target (the URL above). I did not write the Supabase handoff row this time because the legacy API keys on that project were disabled 2026-07-06, so the GitHub raw URL is your reliable resume path. You're good to close this and start fresh.
chat-stopchat-exchangeava
Jul 13, 09:31 PM
[USER] Hey, what are you talking about?! [ASSISTANT] Fair, I've been over-narrating. Plain version: The skills pane (`wD:p3`, master-brain) is **done resuming and sitting at a ready prompt** now. That session (`8f8662ef`) is about adding the **ai-savage UGC pipeline onto Spielberg** (rewired to FAL + MiniMax + Fish), with the SEO Rockstars promo saved. Two honest questions so I stop guessing: 1. Is **that** the "skills" chat you meant, or a different one? 2. When you said you don't see it doing anything, it was mid-compaction, it's ready now. Does your screen show the `āÆ` prompt?
chat-stopchat-exchangeava
Jul 13, 09:26 PM
[USER] check the post again tomorrow to see if it stuck [ASSISTANT] Already wired, you're covered. That's exactly what the **`NVSP-CrowdReply-Check-0714`** scheduled task does. ā–¶ **Tomorrow at 9:07am** it runs automatically (fires whether or not Claude or Codex is open, it's a Windows task) and checks the post for: - āœ… published and live, or ā³ still pending, or āŒ removed - upvote count + the live permalink if it's up - balance + rebill watch It reports two ways so you can't miss it: - šŸ“£ Discord **#client-nvsp** - šŸ“„ a dated file: `04-execution/nvsp-audit-workspace/automation/reports/check-2026-07-14.txt` Then **07-15** re-checks (in case it's still pending tomorrow morning, posts usually assign within a day) and **07-16** adds the rebill watch. Nothing for you to do. If the post published, tomorrow's ping tells you if it stuck and how many upvotes. If you want me to also dig into *why* if it gets removed (sub rules vs automod vs the brand mention), just say so when the result lands.
chat-stopchat-exchangeava
Jul 13, 09:11 PM
[USER] Reply exactly READY_TWO [ASSISTANT] READY_TWO
chat-stopchat-exchangeava
Jul 13, 07:17 PM
[USER] \\ [ASSISTANT] Ready. What do you need? I can see you're on the `codex/nvsp-professional-ui-rebuild` branch with two untracked planning files: - `.planning/artifacts/` - `.planning/score-nvsp-premium-command-center.md` **What's the task?** (e.g. review the UI rebuild, work through the score, commit the planning files, keep building the command center)
chat-stopchat-exchangeava
Jul 13, 07:16 PM
[PRE-COMPACT SNAPSHOT | project=master-brain | trigger=manual] [ASSISTANT] [tool_use:Read] [ASSISTANT] [tool_use:Read] [ASSISTANT] āœ… **V2 is done and playing.** Male creator, natural expressions, your cloned voice as the VO, synced to 16s. **What changed from v1:** - šŸ§‘ New creator: credible 35yo agency-type, confident piece-to-camera. No bug-eyed shock face. Character holds across all 3 clips. - šŸŽ™ļø **Your Fish Audio voice** ("merlino-voice" clone) narrates the whole thing, synced so audio and video end together. - āœ‚ļø Tighter captions (sound-off aids, since the VO carries the pitch) and a tighter CTA. **The VO script (your voice):** "Run SEO? If you're not at Rockstars this year, you're losing. Seven hundred tested strategies. Speakers running four hundred million in revenue. New Orleans, October second to fourth. Grab your seat at rockstarsconference.com." | | v1 | v2 | |---|---|---| | Creator | bug-eyed female (you nixed) | natural male, credible | | Audio | silent | your cloned voice | | Length | 15s | 16s | ## šŸ’° This run: ~$0.65 to $1.10 3 images (~$0.15) + 3 clips (~$0.45 to $0.90) + 2 VO renders (~$0.03). āš ļø Both versions still live in **scratchpad (disposable, home box)**: `...\rockstars-ugc-v2\output\rockstars-ugc-VOICE.mp4`. **ā–¶ Your call:** - šŸ’¾ Save it to the SEO Rockstars project folder (or deploy to a private URL) so it's not disposable? - šŸŽµ Add background music under the VO? - šŸ” More variants (different hook, high-energy version, a female creator with a female voice clone)? [USER] Yeah, you can save it to the project folder and save, and let's wrap everything up here. [ASSISTANT] On it. Finding the SEO Rockstars project folder, then saving the deliverable there: [ASSISTANT] [tool_use:Bash] [ASSISTANT] `F:/Projects/seo-rockstars` is the canonical project folder. Saving the deliverable + source assets there: [ASSISTANT] [tool_use:Bash] [ASSISTANT] Saved. Writing a README so the folder is self-documenting, plus banking the durable facts from this session: [ASSISTANT] [tool_use:Write] [ASSISTANT] [tool_use:Write] [ASSISTANT] Adding the memory index pointer: [ASSISTANT] [tool_use:Edit] [ASSISTANT] All saved and banked. Wrapping up. šŸŽ¬ ## āœ… Session recap: AI Savage UGC pipeline, live and used **Skill work (durable):** - šŸŽ¬ Adopted the **AI Savage `ugc-video`** skill onto **Spielberg** (registered in his roster + both `core.txt` lists so the daily sweep keeps it). - šŸ”§ Rewired image gen **BFL to FAL** (`fal-ai/flux-2-pro` + `/edit`). It now runs on the keys you already own: **FAL + MiniMax + Fish Audio**, no BFL account. Synced to canonical source. - āœ… Verified all 3 providers live (FAL text-to-image, FAL edit/character-consistency, MiniMax video, Fish voice). **Deliverable saved:** - `F:\Projects\seo-rockstars\ugc-videos\2026-07-12-conference-promo\` - `rockstars-ugc-promo-VOICE.mp4` (final, 16s, male creator, your cloned voice) - `source\` (3 stills, VO mp3, script payload, no-caption source) + `README.md` **Memory banked:** `ugc-video-skill-fal-rewire.md` (so next session knows it runs on FAL, not BFL) + index updated. ## šŸ’° Total session spend: ~$2 to $2.50 All the smoke tests + the v1 (nixed) + the v2 final. Each finished ~16s short lands around **$1**. ## ā–¶ Next time (whenever you want) - New UGC short: name a product, I run the skill (~$1). - Variants: different hook, high-energy male, or a female creator with a female voice clone. - Add background music, or deploy any of these to a private URL. That's a wrap. The final video is in your project folder and was playing on screen. šŸ‘
pre-compactpre-compact-snapshotava
Jul 13, 07:05 PM
[PRE-COMPACT SNAPSHOT | project=mikem | trigger=manual] [ASSISTANT] Good news that saves you money: **you already have keys for every model you named, no new signup needed.** Confirmed on the Mac: FAL (Kling + MiniMax Hailuo), Higgsfield, Blotato, MiniMax, DashScope, Runway, plus Creatify. So the "not recurring" concern is moot for these, they're all pay-as-you-go on keys you have. And I found your caption recipe (the Hormozi style): `standard-bold, white text, transparent background (no box), orange #F97316 highlight on the active word`. My `normal-black` white box was wrong. That's the fix. Here's the plan I'm dispatching: [ASSISTANT] [tool_use:Write] [ASSISTANT] [tool_use:Bash] [ASSISTANT] [tool_use:Bash] [ASSISTANT] Dispatched. Here's what's building on the Mac now: ## šŸ”§ Phase 4 (multi-model + captions + proof-on-URL) | Fix | What | |---|---| | šŸŽØ **Captions** | Your Hormozi karaoke recipe: white text, **transparent bg (no white box), orange #F97316 highlight** on the active word, plus your tested `AvatarBubbleTemplate`. My white box is gone. | | šŸŽ¬ **More models** | Engine picker: **Creatify** (avatar, default) + **Kling** + **MiniMax Hailuo** (the Chinese one) + **Higgsfield** + **Blotato**. Each generates a real **per-scene prompt** (like the FLUX backgrounds). Non-avatar engines get ElevenLabs voice + karaoke captions composited with ffmpeg. Creatify/Kling/MiniMax rendering fully this pass, Higgsfield/Blotato scaffolded. | | šŸ“ **Proof on the URL** | No more artifacts. Finished videos **appear and play inside the tool** at oliver-simple.vercel.app. That's the proof, I'll verify by rendering there and confirming it plays. | **Costs:** you already own every key, no recurring signup needed. Kling/MiniMax via FAL, Higgsfield/Blotato direct, all pay-as-you-go. ## ā“ One thing I need from you **I don't see "Pic 3" or any attached image**, so I don't have that API key. Paste the key here (and say which model it's for) and I'll add it on top of the five above. Not blocking the rest. Watcher armed. I'll come back with the fixed captions, the working engines, and the live page where your video plays. What model was Pic 3's key for? [USER] <task-notification> <task-id>b5vh7e1he</task-id> <tool-use-id>toolu_01VnAbz7MdpcZef4W86JBYfe</tool-use-id> <output-file>C:\Users\mikem\AppData\Local\Temp\claude\C--Users-mikem\9695bb62-00a7-4984-afce-798f44a9fa6d\tasks\b5vh7e1he.output</output-file> <status>completed</status> <summary>Background command "Background poll for phase4 completion" completed (exit code 0)</summary> </task-notification> [ASSISTANT] [tool_use:Read] [ASSISTANT] Phase 4 reports done. Verifying with my own eyes, the caption fix, the b-roll engines, and the on-URL proof page. Pulling the frames and checking the live `/outputs` page: [ASSISTANT] [tool_use:Bash] [ASSISTANT] `/outputs` is live (200, 4 completed videos: creatify x2, kling, minimax playing on the page). That's the proof-on-URL you asked for. Now viewing the caption fix and a Kling b-roll frame: [ASSISTANT] [tool_use:Read] [ASSISTANT] Captions are **perfect now**: "Tiny roof stains can become expensive **leaks.**", white bold, **no white box**, active word in **orange**. Exactly your Hormozi recipe. āœ… But I see the two-people problem is back in this Creatify frame, the FLUX background generated a guy with a headlamp behind the avatar, even though the prompt said "no people." FLUX/dev ignores negative prompts, so it leaks people intermittently. Checking the Kling b-roll frame (no avatar, so no collision): [ASSISTANT] [tool_use:Read] [ASSISTANT] Verified both, and there's a clear win plus one honest rough edge. **āœ… Captions FIXED** (your Hormozi recipe): white bold, no box, orange active word. Confirmed on both engines. **āœ… Kling b-roll is excellent** and it solves the two-people problem: that frame is a cinematic attic with a leak dripping into a puddle, exactly matching the script, no avatar, no people collision, orange captions. MiniMax same. These are your cheaper, cleaner scene options. **šŸ“ Proof is on the URL now (no artifact):** # šŸ‘‰ https://oliver-simple.vercel.app/outputs 4 rendered videos playing there right now: Creatify, Kling, MiniMax. Engine picker is in the tool. **āš ļø One honest problem:** the **Creatify avatar background still leaks a person** sometimes (that headlamp guy behind the avatar). FLUX/dev ignores "no people" negative prompts, so it intermittently draws humans. The b-roll engines don't have this because there's no avatar. Fix options: - Tighten the Creatify background to empty-architecture-only + auto-regenerate if a face is detected, or - For scenes where you don't want the avatar, just use Kling/MiniMax (already clean). **I need 3 things from you:** 1. **Pic 3's API key**, still no image attached, paste it and I'll wire that model too. 2. The correct **Creatify avatar-bubble template id**, `AvatarBubbleTemplate` got rejected by their API as invalid, so tell me the right one or I'll pull it from your Creatify account. 3. Want **per-scene** engine mixing next (some scenes avatar, some b-roll in one video), or keep it per-video? You said "depending on the scene", that's the per-scene build. Want me to knock out the Creatify background face-check fix now while you grab that key?
pre-compactpre-compact-snapshotava
Jul 13, 07:05 PM
[PRE-COMPACT SNAPSHOT | project=master-brain | trigger=manual] [ASSISTANT] Building the branded version now, real editable PowerPoint with: - Your **logo** on every slide (bigger on the title) - **Gold + ink + white** (sampled from your logo), white default - The real **conference-audience photo** as the hero + section slides, and the **3 promo stills** dropped into the story/secrets/close slides (no dark scrims, clean photos) - All 17 Perfect Webinar slides + speaker notes, images embedded so it opens self-contained When it lands I'll **render the actual slides to images and show them here** so you can see the graphics this time, not just hand you a file. Standing by. [USER] <task-notification> <task-id>a139a8fd2427dfcf4</task-id> <tool-use-id>toolu_01FzDTowH3aR9L8B5g1ZfZb1</tool-use-id> <output-file>C:\Users\mikem\AppData\Local\Temp\claude\F--Projects-merlino-ai-master-brain\1549c9d3-905f-4e61-abc1-c9ebda9c824b\tasks\a139a8fd2427dfcf4.output</output-file> <status>completed</status> <summary>Agent "Build real Perfect Webinar .pptx template" finished</summary> <note>A task-notification fires each time this agent stops with no live background children of its own. The user can send it another message and resume it, so the same task-id may notify more than once.</note> <result>Branded, verified, self-contained. **File:** `F:\Projects\seo-rockstars\webinar\Perfect-Webinar-Template.pptx` **Slides:** 17 (all present, framework structure + bracketed fill-in copy + speaker notes intact) **Notes:** 17/17 **Size:** 3.65 MB (up from 78 KB, real images now embedded) **Pictures placed on slides:** 24 **Unique embedded image parts:** 7 (logo + audience photo + clip1/2/3 + OG, all embedded so it opens self-contained) **Dash check:** 0 em/en dash violations Branding applied: - **Logo** on every slide (small, top-right) plus large on the title slide. Used directly, not recolored. - **Colors** swapped deep-blue for SEO Rockstars gold: brand gold `#C7A24B` accent + deep gold `#B08A2E` headlines + near-black ink on white/bone. Gold seams, bars, and section numbers throughout. - **Real images** replacing the old placeholder boxes: - Title slide: audience photo as a clean right-side panel (split layout, no scrim), gold seam divider - Hook: clip1 - Origin story: audience photo strip beside the Before/Epiphany/After beats - Secrets 1/2/3: clip1 / clip2 / clip3 - Close/Thank You: OG banner image - **No dark gradient scrims** anywhere. Text sits on solid white/bone panels beside the photos, so every photo stays clean. - White/light background kept as default. - One placeholder box deliberately kept on the Offer slide (product mockup), where no supplied image fits. Confirmed a real editable PowerPoint: reopened with python-pptx, 17 slides, 7 embedded image parts intact, opens self-contained in PowerPoint or Google Slides.</result> <usage><subagent_tokens>200233</subagent_tokens><tool_uses>12</tool_uses><duration_ms>190778</duration_ms></usage> </task-notification> [ASSISTANT] Branded PowerPoint is done: **17 slides, 3.65 MB, 24 images placed** (logo on every slide, real conference photos, gold branding, no scrims, white default). Now rendering the actual slides to images so you can see it this time. (Ignoring the auto-triggered web-template prompt, you asked for a PowerPoint, not a website, and it's built.) [ASSISTANT] [tool_use:Bash] [ASSISTANT] LibreOffice isn't on this box. Let me render via PowerPoint itself (you have Office) using COM automation to export the slides as PNGs. [ASSISTANT] [tool_use:PowerShell] [ASSISTANT] All 17 slides exported. Here's the branded deck, a walk-through of the key slides so you can see it: [ASSISTANT] [tool_use:Read] [ASSISTANT] [tool_use:Read] [ASSISTANT] [tool_use:Read] [ASSISTANT] [tool_use:Read] [ASSISTANT] [tool_use:Read] [ASSISTANT] [tool_use:Read] [ASSISTANT] That's your real, editable PowerPoint, branded and readable this time. ## āœ… `F:\Projects\seo-rockstars\webinar\Perfect-Webinar-Template.pptx` 17 slides, 3.65 MB, opens and edits in PowerPoint or Google Slides. **What you're seeing above:** - **Your logo** on every slide, big on the title, plus your **gold + ink + white** brand - **Real images**: the conference-audience photo on the title (clean split, no scrim), your promo stills on the Secrets slides, your OG banner on the close - **Big, legible type**, no tiny text - It's a **fill-in template**: every `[ bracket ]` is a blank for you and Greg, and each slide has **speaker notes** (press notes in PowerPoint) explaining that slide's job in the Perfect Webinar **The full Brunson sequence**: Title → Hook → The One Thing → Origin story → Big Domino → 3 Secrets (Vehicle / Internal / External) → Transition → Stack A/B/C → Price → Guarantee → Urgency → Close → Q&A. The made-up "$400M playbook" headline is **gone**, this is a clean template, no fabricated numbers. **Two things:** - The `build_perfect_webinar_pptx.py` generator sits next to it, so any color/copy tweak regenerates fast. - Want me to get this file onto your laptop / email it for the Greg meeting? (Your Drive auth is still dead until you run `! gws auth login`, but I can route it another way.) Want any slide-level changes, or the offer slides pre-filled once you tell me what the webinar sells?
pre-compactpre-compact-snapshotava
Jul 13, 06:50 PM