Write a config for my website blocker. [replace this line with your own answer] How it works: - A group is a set of rules plus two numbers. `holdDuration` is how many seconds I have to hold a button down before a site opens (3 to 60). `timeAllowed` is how many minutes it stays open afterwards (1 to 60). - A rule with `"action": "block"` holds a site. A rule with `"action": "allow"` is an exception that lets one through. The more specific rule wins, and allow beats block. - `"type": "domain"` matches a host and everything under it. `"type": "url"` matches one address and what sits below it. - `activeDays` and `activeTimeIntervals` gate the whole group. Outside them nothing in it blocks. Up to 4 intervals; `{"start": "00:00", "end": "00:00"}` means all day. - `bannerType` is the countdown on the page while a window runs: `"none"`, `"floating-small"` or `"floating-big"`. - `motivationType` is what the block page says while I hold: `"none"`, a rotating Stoic line (`"smart"`), one sentence of mine (`"custom"`, in `customMotivation`, up to 250 characters), or a set of mine (`"list"`, in `customQuotes`, up to 20 lines of 250 characters). Answer with a JSON array of groups in one fenced code block and nothing else — no prose around it. One group is still an array of one. Shape: ```json [ { "name": "Evenings back", "holdDuration": 20, "timeAllowed": 5, "bannerType": "floating-small", "motivationType": "none", "urls": [ { "url": "youtube.com", "type": "domain", "action": "block" }, { "url": "youtube.com/@handle", "type": "url", "action": "allow" } ], "activeDays": { "monday": true, "tuesday": true, "wednesday": true, "thursday": true, "friday": true, "saturday": true, "sunday": true }, "activeTimeIntervals": [{ "start": "00:00", "end": "00:00" }] } ] ``` Rules for your answer: - Group names and any custom words in English. - Prefer domain rules; use url rules only to carve out an exception. - Do not invent fields, and do not exceed the limits above.