story-to-pack: add the corpora and the catalogue v2/v3
Fourteen corpora split and classified: aesop, bierce, chekhov, holmes, keefe, lawson, lorimer, maupassant, nobody, plaintales, poe, torchy, wallingford and winesburg, each with its splitter and the hand-written groups and pages; catalogue v2 and v3; and the shared splitters gutenberg_chunks.py, se_split.py and se_build.py. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019rwKTmug58sEsJ72AuWsEi
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
e5617b86ba
commit
3a4758172d
@@ -0,0 +1,220 @@
|
||||
# Aesop reference set: *Three Hundred Aesop's Fables* (tr. George Fyler Townsend, 1867)
|
||||
|
||||
A hand-made comparison baseline for the story-to-pack pipeline, a sibling of the Jacobs set in
|
||||
`../jacobs/` and the Lawson set in `../lawson/`. Claude read all 313 fables and wrote every summary,
|
||||
predicament, group, option and measurement row. **No inference of any kind was used.** Do not treat
|
||||
it as ground truth: it is one careful reading.
|
||||
|
||||
Aesop has two jobs here. It is a normal reference set. It is also a test of a different claim: a story
|
||||
supplies predicaments well but rarely says what a move leads to, while a fable puts situation, move
|
||||
and outcome in one paragraph. The second job is measured in
|
||||
[Fables as an option source](#fables-as-an-option-source).
|
||||
|
||||
| File | What it is |
|
||||
| --- | --- |
|
||||
| `corpus/three-hundred-aesops-fables.txt` | Project Gutenberg eBook #21 (public domain) |
|
||||
| `split_gutenberg.py` | → `stories.json` and `chunks.json`: **313 fables, one story and one scene per fable** (see below) |
|
||||
| `claude/batches/sNNN.json` | `{chunk, story, summary, predicament, moral}`, one file per run of fables, named by the first fable in it so that the `s*.json` glob sorts in fable order |
|
||||
| `claude/groups_src.py` | the groups, their options, and the protagonist's standing in every fable |
|
||||
| `claude/options_src.py` | the options measurement, with the definitions of its `new:` entries and the rules for `stated` |
|
||||
| `claude/build.py` | checks everything, then writes `claude/records.json`, `claude/groups.json` and `claude/options_by_entry.json` |
|
||||
| `claude/page.py` | → `claude/REFERENCE.html`, the readable page, with the measurement at the end |
|
||||
|
||||
Rebuild: `python3 split_gutenberg.py` from this directory, then
|
||||
`cd claude && python3 build.py && python3 page.py`.
|
||||
|
||||
**One scene per fable** departs from the usual 80-word scene rule on purpose. The median fable is 97
|
||||
words, and many are under 80, so the rule would discard them, and a fable split in two would lose its
|
||||
turn. A group's fable count is therefore also its story count.
|
||||
|
||||
## What is in it
|
||||
|
||||
- **313 predicaments**: one sentence each (median 21 words, min 15, max 24), transplanted to a
|
||||
workplace. They contain no animal, plant or god names and no story-only objects. Human role words
|
||||
stay (someone powerful, a partner, a newcomer, the boss). `build.py` enforces this with a list of
|
||||
every creature, plant, god and prop in the book, not with `topic_words`. The list caught nine
|
||||
predicaments that used an animal word as a verb or an idiom ("crow about it", "swallow it whole",
|
||||
"the lion's share"), and all nine were reworded.
|
||||
- **115 stated morals**, recorded verbatim. A moral here is the fable's unquoted, generalising
|
||||
sentence ("Look before you leap."). Where the lesson is only spoken by a character inside quotation
|
||||
marks, as in *The Lion and the Mouse*, `moral` is `null`. `build.py` checks every moral is in the
|
||||
text.
|
||||
- **16 groups of 13 or more fables**, the recurrence rule scaled to this corpus (at least
|
||||
max(3, 4% of 313) = 13). They range from 13 to 18 fables. **4 small groups of 5 to 12** are marked
|
||||
`small` and reported separately: G17 letting a known predator inside (6), G18 the lion's share (6),
|
||||
G19 a bad record when you need trust (5), G20 a warning before the trouble (6). Each fable sits in at
|
||||
most one group: **253 are assigned and 60 fit nothing that recurs**.
|
||||
- **Options**: 3 to 5 per group, 94 in all. 87 come from what someone in a member fable did or
|
||||
refused to do (`scene:N`), 7 fill gaps, and none are archetypes. No option cites a fable outside
|
||||
its own group, unlike Jacobs (8) and Lawson (14). A fable is a whole turn, so the move and the fable
|
||||
are always the same scene.
|
||||
- **Moves**: spine paths with a direction only (`+`, `-`, `risk`, `set`). There are no magnitudes.
|
||||
**Skills** proposed for this corpus: `wit`, for seeing through a trick and turning it, and
|
||||
`prudence`, for looking before you leap, knowing your limits and keeping what you have. Between them
|
||||
they are most of Aesop's morals.
|
||||
- **Stage** comes from protagonist standing, judged **per fable** in `STANDING` in `groups_src.py`:
|
||||
157 fables rank low, 119 middle and 37 high. **No group comes out stage `high`** (11 low, 9 middle).
|
||||
Aesop's "you" is usually the lamb, not the wolf, and the high-standing fables (a father, a master, a
|
||||
captor) scatter across groups rather than recurring together.
|
||||
|
||||
The groups:
|
||||
|
||||
| | Group | Fables | Nearest catalogue entry |
|
||||
| --- | --- | --- | --- |
|
||||
| G01 | A friendly approach from someone who would gain by your fall | 16 | new (near `sure_thing`) |
|
||||
| G02 | At the mercy of someone who has already decided | 14 | `at_their_mercy` |
|
||||
| G03 | Trading one hardship for another | 14 | new |
|
||||
| G04 | Envying another's gift | 17 | new (near `overlooked`) |
|
||||
| G05 | Passing for more than you are | 14 | `pretence` |
|
||||
| G06 | Riding high | 13 | new |
|
||||
| G07 | Sneered at by someone showier | 13 | new (near `power_over_you`) |
|
||||
| G08 | Help asked in need | 14 | `plea_for_help` |
|
||||
| G09 | Wanting more than you hold | 13 | new |
|
||||
| G10 | Your side divided | 15 | new |
|
||||
| G11 | A partner you may not be able to count on | 18 | new (near `used`) |
|
||||
| G12 | Rushing in without looking | 13 | new |
|
||||
| G13 | Pointing at others' faults | 14 | new (near `own_words_back`) |
|
||||
| G14 | Liberties between the weak and the strong | 15 | new (near `revenge`) |
|
||||
| G15 | A hard lot | 14 | new (near `dead_end`) |
|
||||
| G16 | Worked hard, badly repaid | 13 | new (near `overlooked`) |
|
||||
|
||||
Only three large groups match an existing entry. The rest are situations about **self-regard and
|
||||
prudence** (envy, pride, greed, heedlessness, pointing at faults), which no story corpus isolated.
|
||||
The story corpora found them only as the texture of longer plots.
|
||||
|
||||
## How this corpus differs
|
||||
|
||||
**Recurrence is the corpus's nature, not something to be found.** Every earlier corpus needed a
|
||||
search for the handful of situations its stories kept returning to. Aesop is built from a small
|
||||
stock of situations told over and over with different animals: the predator's invitation alone
|
||||
appears sixteen times. The problem flips. Nearly every fable recurs, and the work is deciding which
|
||||
of several overlapping situations a fable belongs to. *The Fox and the Goat* is a trap, a heedless
|
||||
leap, and a partner who uses you. It sits in G01.
|
||||
|
||||
**The predicaments are the cleanest yet.** There are no names to strip, and the whole cast is
|
||||
already a set of roles: the strong, the weak, the flatterer, the partner, the master. Transplanting
|
||||
to a workplace needs only the animal removed. The cost is abstraction: a pack built on these
|
||||
predicaments alone would have no setting at all.
|
||||
|
||||
**Two groups hold both sides of one situation.** G13 holds the critic who shares the fault and the
|
||||
one criticised. G14 holds the weak who strike at the fallen and the strong being needled. In Jacobs
|
||||
and Lawson the actor was always on one side. Here the fable often follows both parties to their fate,
|
||||
and splitting them would leave neither side at 13. The measurement does the same for `sneered_at`:
|
||||
G07's predicaments are all from the side of the one sneered at, but four of its fables (the heifer, the
|
||||
horse, the olive, the hare) also supply the sneerer's move as an option.
|
||||
|
||||
**Power runs through nearly everything.** Five of the sixteen groups turn on an imbalance of power
|
||||
(G01, G02, G03, G14, G16), and two of the small ones as well. Of the options measured below, 110 of
|
||||
242 are about the actor's standing going down. It is the most power-heavy corpus so far, and the
|
||||
least domestic: there is almost no home, love, grief or dread.
|
||||
|
||||
## Fables as an option source
|
||||
|
||||
`claude/options_by_entry.json` maps a catalogue entry (a v2 id, or `new:<id>` defined under
|
||||
`_new_entries`) to the options the fables supply for it. Each option is
|
||||
`{text, moves, source: "chunk:N", evidence, stated}`. `evidence` is the verbatim moral, or an
|
||||
excerpt of at most 30 words, and `build.py` checks both. **`stated` is `true` only if the fable's own
|
||||
outcome or moral shows the direction of every path in `moves`.** The rules, applied the same way to
|
||||
every row, are in the docstring of `options_src.py`. The main points:
|
||||
|
||||
- An outcome is read as a direction by a fixed table. Killed, caught, beaten, driven out or publicly
|
||||
rebuked counts as `standing -`. Goods, food or pay lost counts as `money -`. A counterpart who
|
||||
repays, deserts or stops trusting you counts as `relationships`. Reading "eaten" as `standing -` is
|
||||
a convention. The fable does not say it.
|
||||
- A moral that only calls a move wise or foolish ("Look before you leap.") states no direction. One
|
||||
that names the effect ("Slow but steady wins the race.") does.
|
||||
- An outcome the move did not cause is not counted, however pointed. The sparrow is taken by a hawk
|
||||
while mocking the hare, but mocking did not bring the hawk.
|
||||
- `risk` is stated only when one fable shows the same move ending both ways. That happens once, in
|
||||
*The Birdcatcher, the Partridge, and the Cock*: one bird's plea spares it, and the other's does not.
|
||||
- **Measurement moves use only `money`, `standing` and `relationships.<role>`.** A skill label or a
|
||||
flag is a decision about the option, not an outcome any text can show. Leaving them out means every
|
||||
row could in principle be stated. The group options in `groups_src.py` keep them.
|
||||
|
||||
**Results:**
|
||||
|
||||
| | |
|
||||
| --- | --- |
|
||||
| Catalogue v2 entries with at least one sourced option | **32 of 82** (26 with at least one stated option) |
|
||||
| `new:` entries | **19**, all with at least one stated option |
|
||||
| Options | **242**, from 229 fables (84 for v2 entries, 158 for new ones) |
|
||||
| `stated: true` | **165 (68%)**: 62 of 84 for v2 entries (74%), 103 of 158 for new ones (65%) |
|
||||
| Entries with three or more stated options | 21 |
|
||||
| Entries with a stated `+` option and a stated `-` option | 15 |
|
||||
|
||||
The v2 entries the fables speak to are mostly about power, deception and help. `at_their_mercy`
|
||||
gets 14 options (12 stated), `plea_for_help` 11 (9), `pretence` 8 (6) and `warning` 5 (2). Another 28
|
||||
entries get one to four options each. The 50 entries with nothing are almost all of the catalogue's
|
||||
home, love, loss, fear and duty. Examples are `home_unseen`, `grief`, `losing_them`, `dread`,
|
||||
`duty_against_love`, `past_comes_back` and `promised_elsewhere`. Aesop has no inner life and almost
|
||||
no family.
|
||||
|
||||
The 19 new entries are `friendly_predator`, `better_the_devil`, `ape_your_betters`, `riding_high`,
|
||||
`sneered_at`, `grasping`, `divided`, `doubtful_ally`, `heedless`, `pot_and_kettle`,
|
||||
`needling_the_strong`, `hard_lot`, `used_up`, `predator_inside`, `lions_share`, `bad_record`,
|
||||
`asking_above`, `please_everyone` and `make_them_move`. Each definition says which v2 entry it sits
|
||||
nearest to and how the decision differs.
|
||||
|
||||
**Against the story packs.** Every option in a story pack has an inferred direction: the author
|
||||
judged where the move leads, because the story does not say.
|
||||
|
||||
| Pack | Options | `scene:N` | `archetype` | `filled` | Directions stated by the text |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| Lawson (`../lawson/claude/groups.json`) | 142 | 118 | 12 | 12 | 0 (all inferred) |
|
||||
| Bierce (`../bierce/claude/groups.json`) | 128 | 96 | 15 | 17 | 0 (all inferred) |
|
||||
| Aesop groups (`claude/groups.json`) | 94 | 87 | 0 | 7 | not separately judged |
|
||||
| Aesop measurement (`claude/options_by_entry.json`) | 242 | 242 (all from a fable) | 0 | 0 | 165 (68%) |
|
||||
|
||||
Even a `scene:N` option in a story pack is sourced only for its *move*: the scene shows someone doing
|
||||
it, and its effect is the author's call. In the measurement, two thirds of the options are sourced for
|
||||
the effect as well.
|
||||
|
||||
The 68% needs three qualifications before anyone relies on it.
|
||||
|
||||
1. **The stated options are thin.** 226 of the 242 options carry a single path, and 15 of the 16
|
||||
two-path options are stated. A fable follows one actor to one fate, and that fate is nearly always
|
||||
their standing. Story-pack options carry more: Lawson's average 1.67 spine paths each, Bierce's
|
||||
1.18 and Aesop's own group options 1.40, before skills and flags. What a fable usually leaves
|
||||
unsaid is the second path, how the move changes a relationship.
|
||||
2. **They are almost all downside.** Of the 165 stated options, **136 move only in the `-`
|
||||
direction**. By path, 90 stated `standing -` against 12 stated `standing +`. A fable states the
|
||||
price of the tempting mistake: the goat in the well, the crow who sang, the dog who dropped his
|
||||
meat. The wise move's reward is usually just that the harm does not happen, and that gives no
|
||||
direction. The fox who stays outside the sick lion's cave is right, and nothing moves for him. That
|
||||
is why the options marked `false` are so often the prudent ones. Only 15 entries get a stated
|
||||
option in each direction.
|
||||
3. **The coverage is narrow.** 32 of 82 entries, with most of the weight on a handful. The fables
|
||||
tell you a great deal about predators, pretenders and the greedy, and nothing about a spouse, a
|
||||
dead friend or a night watch.
|
||||
|
||||
**Verdict.** Fables are a real source of effect directions, and a far better one than stories, but
|
||||
only for one kind of option. For a tempting mistake in a situation of power, greed, pride or trust,
|
||||
the fable states where it leads, with evidence, seven times in ten (136 of the 190 options that only
|
||||
move down). For any other option it is about half (29 of 52). That is enough to anchor
|
||||
the `-` direction of an event's tempting option, and to check an author's inferred direction against
|
||||
a text. Fables do not supply the prudent option's payoff, the relationship side of a move, or skills,
|
||||
and they say almost nothing about the catalogue's domestic and inward half. The same applies to them as
|
||||
a source of predicaments. Use them to calibrate the downside of options in power and trust events,
|
||||
not to build whole events.
|
||||
|
||||
## Known defects
|
||||
|
||||
- **Drop capitals.** The transcription lost each fable's printed drop capital, so many fables open
|
||||
with the first word's initial missing: "WOLF, meeting with a Lamb" (fable 1), "TEE KITES" (180).
|
||||
`chunks.json` is left as split. Morals and evidence are quoted from later in the text, so none is
|
||||
affected.
|
||||
- **Other transcription slips**, left as split: "an a woman" (194), "use I gave credence" (280),
|
||||
"all bag in front" (260).
|
||||
- **Fable 89, *The Æthiop***, rests on a racist premise, that a black servant's colour is dirt to be
|
||||
scrubbed off. Its predicament keeps only the transplantable turn: trying to scrub away someone's
|
||||
nature, and hurting them. It is unassigned.
|
||||
- **Etiologies are not situations.** *The Goods and the Ills* (250), *The Lark Burying Her Father*
|
||||
(263), *The Man, the Horse, the Ox, and the Dog* (203) and *The Two Bags* (260) explain how
|
||||
something came to be. Their predicaments are strained, and three of the four are unassigned.
|
||||
- **G11 is the loosest large group** (18 fables). It holds every doubtful partner, from the companion
|
||||
who flees a bear to the boastful suitor, joined only by the question "can I count on them?".
|
||||
- **Standing is judged per fable** from the predicament's "you", not from the animal. So the lion in
|
||||
*The Lion and the Mouse* ranks high because the predicament puts the player in the lion's place.
|
||||
|
||||
The Lorimer advice-book pilot running alongside this one was not read. The two results are
|
||||
independent.
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,47 @@
|
||||
[
|
||||
{"chunk": 0, "story": 0, "summary": "A lion spares a mouse who begs for its life, and later the mouse gnaws through the hunters' ropes that bind the lion.", "predicament": "Someone far beneath you whom you could crush begs to be let off and swears they will repay you one day.", "moral": null},
|
||||
{"chunk": 1, "story": 1, "summary": "A wolf invents one charge after another against a lamb, and when each is refuted eats him anyway.", "predicament": "Someone powerful who has already decided to ruin you keeps inventing charges, and each answer you give changes nothing.", "moral": "The tyrant will always find a pretext for his tyranny."},
|
||||
{"chunk": 2, "story": 2, "summary": "An ass envies the grasshoppers' song, tries to live on dew as they claim to, and starves.", "predicament": "You admire a colleague's talent so much that you copy their habits, though what feeds them will not feed you.", "moral": null},
|
||||
{"chunk": 3, "story": 3, "summary": "A crane pulls a bone from a wolf's throat and, asking for her fee, is told that keeping her head is payment enough.", "predicament": "You did risky work for someone ruthless on a promise of payment, and now they say escaping unharmed is your fee.", "moral": "In serving the wicked, expect no reward, and be thankful if you escape injury for your pains."},
|
||||
{"chunk": 4, "story": 4, "summary": "A father shows his quarrelling sons that a bundle of sticks cannot be broken though each stick alone snaps easily.", "predicament": "The people under you quarrel constantly among themselves, and you must make them see that divided they are easy prey.", "moral": null},
|
||||
{"chunk": 5, "story": 5, "summary": "A bat caught by two weasels claims to be a mouse to one and a bird to the other, and escapes both.", "predicament": "Two hostile powers each catch you in turn, and you could save yourself by claiming to be whatever each one tolerates.", "moral": "It is wise to turn circumstances to good account."},
|
||||
{"chunk": 6, "story": 6, "summary": "A cock scratching for food finds a jewel and says one grain of barley would be worth more to him.", "predicament": "Something others would prize highly has fallen into your hands, but it is of no use to you in your present need.", "moral": null},
|
||||
{"chunk": 7, "story": 7, "summary": "A swallow and a crow argue over plumage, and the crow says his feathers at least last through the winter.", "predicament": "A showy colleague belittles you, and you must decide whether to argue looks or point to what lasts when times turn hard.", "moral": "Fair weather friends are not worth much."},
|
||||
{"chunk": 8, "story": 8, "summary": "A just lion king proclaims peace between strong and weak beasts, and the hare, praising it, runs for his life.", "predicament": "A new leader declares that the weak will now stand safely beside the strong, and you are one of the weak.", "moral": null},
|
||||
{"chunk": 9, "story": 9, "summary": "A traveller scolds his dog for dawdling, and the dog replies that he is ready and waiting on his master.", "predicament": "Someone above you blames you for the delay, when in fact you have long been ready and are waiting on them.", "moral": "The loiterer often blames delay on his more active friend."},
|
||||
{"chunk": 10, "story": 10, "summary": "A starving grasshopper who sang all summer begs food of the ants, who mock him for not saving.", "predicament": "Someone who idled while you worked and saved now comes to you hungry, asking you to share what you stored.", "moral": null},
|
||||
{"chunk": 11, "story": 11, "summary": "A hare mocks a tortoise's pace, sleeps during their race, and loses to her steady plodding.", "predicament": "Someone gifted mocks your slowness and accepts your challenge, sure they can win without really trying.", "moral": "Slow but steady wins the race."},
|
||||
{"chunk": 12, "story": 12, "summary": "A charcoal-burner invites a fuller to share his house to save costs, and the fuller refuses because he would blacken all his work.", "predicament": "A friend proposes sharing premises to save money, but the way they work would undo everything you do.", "moral": "Like will draw like."},
|
||||
{"chunk": 13, "story": 13, "summary": "A boy catching locusts reaches for a scorpion, which warns him he would have lost everything had he touched it.", "predicament": "You have been collecting easy wins, and the next thing you are about to grab looks like the others but is dangerous.", "moral": null},
|
||||
{"chunk": 14, "story": 14, "summary": "A fisherman pipes to the fish in vain, then casts his net and scolds them for dancing only now.", "predicament": "You have waited in vain for people to come round of their own accord, and could stop coaxing and use the tool you have.", "moral": null},
|
||||
{"chunk": 15, "story": 15, "summary": "A dog carrying meat snaps at his reflection's larger piece and loses his own.", "predicament": "You already hold something good, and a bigger prize that may not be real tempts you to let go of it.", "moral": null},
|
||||
{"chunk": 16, "story": 16, "summary": "A carter whose wagon is stuck calls on Hercules, who tells him to put his shoulder to the wheel first.", "predicament": "Your work is stuck, and you are waiting for someone powerful to rescue you instead of putting your own effort into it.", "moral": "Self-help is the best help."},
|
||||
{"chunk": 17, "story": 17, "summary": "A blind young mole insists he can see, and his mother's test shows he cannot even smell.", "predicament": "A young person insists they have a skill they plainly lack, and you must decide how to show them without crushing them.", "moral": null},
|
||||
{"chunk": 18, "story": 18, "summary": "A herdsman vows an offering to find his calf's thief, then finds a lion eating it and vows more to escape.", "predicament": "You swore to track down whoever took from you, and have just found out the culprit is far more dangerous than you.", "moral": null},
|
||||
{"chunk": 19, "story": 19, "summary": "A fawn asks why his mother, bigger and armed, flees from hounds, and she admits she simply cannot help it.", "predicament": "You have every advantage over the one who frightens you, and still you cannot bring yourself to stand your ground.", "moral": "No arguments will give courage to the coward."},
|
||||
{"chunk": 20, "story": 20, "summary": "A fox betrays his partner the ass to a lion in return for his own safety, and the lion takes them both.", "predicament": "Danger threatens you and a partner, and someone powerful offers to spare you if you hand your partner over.", "moral": null},
|
||||
{"chunk": 21, "story": 21, "summary": "Flies gorge on spilt honey, stick fast in it and die lamenting their greed.", "predicament": "An easy pleasure is spread out in front of you, and the longer you indulge the harder it will be to get free.", "moral": "Pleasure bought with pains, hurts."},
|
||||
{"chunk": 22, "story": 22, "summary": "The beasts ask the lioness how many young she bears, and she says only one, but that one a lion.", "predicament": "Others boast of how much they produce and demand to know your numbers, when you produce little but of real quality.", "moral": "The value is in the worth, not in the number."},
|
||||
{"chunk": 23, "story": 23, "summary": "A farmer warms a frozen snake in his bosom, and it revives and bites him fatally.", "predicament": "Someone known for treachery is down and helpless, and you could take them in and nurse them back to strength.", "moral": "The greatest kindness will not bind the ungrateful."},
|
||||
{"chunk": 24, "story": 24, "summary": "A man points to a statue of a man strangling a lion, and the lion says a lion would have carved it the other way.", "predicament": "In a dispute over who is stronger, your rival points to evidence that was produced entirely by their own side.", "moral": "One story is good, till another is told."},
|
||||
{"chunk": 25, "story": 25, "summary": "A bramble tells a pomegranate and an apple tree to stop disputing which is more beautiful in its presence.", "predicament": "Two respected colleagues argue over who is the best, and someone who counts for nothing loudly sets themselves up as judge.", "moral": null},
|
||||
{"chunk": 26, "story": 26, "summary": "A stork caught in a net with thieving cranes pleads his good character, but the farmer kills him with them.", "predicament": "You are caught alongside people who were doing wrong, and your good character counts for nothing because of the company you kept.", "moral": "Birds of a feather flock together."},
|
||||
{"chunk": 27, "story": 27, "summary": "A mountain groans as if in labour, crowds gather in dread, and out comes a mouse.", "predicament": "Someone has made a huge commotion about what they are about to produce, and everyone is gathered waiting for the result.", "moral": "Don’t make much ado about nothing."},
|
||||
{"chunk": 28, "story": 28, "summary": "A bear boasts he loves men so much he never touches their dead, and a fox wishes he spared the living instead.", "predicament": "Someone boasts of their kindness in a way that costs them nothing, while they keep harming those who are still around.", "moral": null},
|
||||
{"chunk": 29, "story": 29, "summary": "A tortoise begs an eagle to teach her to fly, promising riches, and is dropped and dashed to pieces.", "predicament": "You long for a role quite beyond your nature, and someone offers to lift you into it if you pay well.", "moral": "If men had all they wished, they would be often ruined."},
|
||||
{"chunk": 30, "story": 30, "summary": "A fox trapped in a well praises the water to a goat, climbs out on the goat's back, and leaves him there.", "predicament": "Someone already in trouble urges you to join them in a venture, praising it highly, and you have not checked the way out.", "moral": "Look before you leap."},
|
||||
{"chunk": 31, "story": 31, "summary": "A raven envies a swan's whiteness, moves to the lakes to wash, and starves without changing colour.", "predicament": "You envy a colleague's standing and give up the work that feeds you to copy their habits, hoping to become like them.", "moral": "Change of habit cannot alter Nature."},
|
||||
{"chunk": 32, "story": 32, "summary": "A thirsty pigeon flies at a painted goblet on a signboard and breaks her wings.", "predicament": "You badly need something, and what looks like it has just appeared, so you rush at it without checking that it is real.", "moral": "Zeal should not outrun discretion."},
|
||||
{"chunk": 33, "story": 33, "summary": "A dog lying in a manger snaps at the oxen to stop them eating hay he cannot eat himself.", "predicament": "Something you cannot use yourself sits under your control, and the people who need it are waiting for you to let them have it.", "moral": null},
|
||||
{"chunk": 34, "story": 34, "summary": "Oxen hauling a wagon rebuke the creaking axles for complaining when it is the oxen doing the work.", "predicament": "You carry the heaviest share of the work in silence, while someone who does far less complains loudly about the strain.", "moral": "Those who suffer most cry out the least."},
|
||||
{"chunk": 35, "story": 35, "summary": "Cranes learn a farmer's sling is only for show and ignore it, until he loads it with stones and kills many.", "predicament": "Someone in charge has threatened you many times without following through, and you have started to ignore the threats.", "moral": "If words suffice not, blows must follow."},
|
||||
{"chunk": 36, "story": 36, "summary": "An old lion feigns sickness and eats his visitors, until the fox notices tracks going in and none coming out.", "predicament": "A powerful person asks you to come in close to talk, and you notice that others who went in never came back.", "moral": "He is wise who is warned by the misfortunes of others."},
|
||||
{"chunk": 37, "story": 37, "summary": "One traveller climbs a tree and leaves his friend to face a bear, and the friend later says the bear warned him against such companions.", "predicament": "When trouble struck, your companion saved themselves and left you to face it alone, and now they joke about it.", "moral": "Misfortune tests the sincerity of friends."},
|
||||
{"chunk": 38, "story": 38, "summary": "A fox who lost his tail urges all the other foxes to cut theirs off, and one sees through him.", "predicament": "Someone who has suffered a loss urges everyone to give up the same thing, claiming it is an improvement for all.", "moral": null},
|
||||
{"chunk": 39, "story": 39, "summary": "A cat accuses a cock of crowing at night to justify eating him, and eats him despite his defence.", "predicament": "Someone with power over you has already decided to be rid of you and is only looking for a respectable excuse.", "moral": null},
|
||||
{"chunk": 40, "story": 40, "summary": "A wolf disguised in a sheep's skin is shut in the fold and killed by the shepherd who takes him for mutton.", "predicament": "You have disguised yourself as one of the harmless crowd to get what you want, and now you are treated exactly like them.", "moral": "Harm seek, harm find."},
|
||||
{"chunk": 41, "story": 41, "summary": "A goatherd breaks a stray goat's horn with a stone and begs it not to tell his master, and the goat says the horn will speak.", "predicament": "You have damaged something in your care and ask a witness to keep quiet, but the damage itself will be plain to see.", "moral": "Do not attempt to hide things which cannot be hid."},
|
||||
{"chunk": 42, "story": 42, "summary": "A returned traveller boasts of a great leap made abroad, and a bystander tells him to leap it here.", "predicament": "You have been boasting of a feat done far away with witnesses, and someone asks you to do it again right here.", "moral": null},
|
||||
{"chunk": 43, "story": 43, "summary": "A woodcutter agrees to let a lion court his daughter if he gives up his teeth and claws, then drives him off.", "predicament": "Someone you fear demands something you cannot refuse outright, so you set a condition that will leave them harmless.", "moral": null},
|
||||
{"chunk": 44, "story": 44, "summary": "A miser's buried gold is stolen, and a neighbour tells him a stone in the hole would serve him just as well.", "predicament": "Wealth you hoarded and never used has been taken from you, and someone points out you were no poorer before.", "moral": null}
|
||||
]
|
||||
@@ -0,0 +1,49 @@
|
||||
[
|
||||
{"chunk": 45, "story": 45, "summary": "A pig squeals when the shepherd seizes him, and tells the complaining sheep and goat that they are handled for wool and milk but he for his life.", "predicament": "Colleagues who are only ever asked for small things scold you for resisting, when what is demanded of you is everything.", "moral": null},
|
||||
{"chunk": 46, "story": 46, "summary": "A boy grasps so many filberts that he cannot pull his hand out of the pitcher, and is told to take half.", "predicament": "You have grabbed so much at once that you cannot get any of it out, and letting go of half feels like losing.", "moral": "Do not attempt too much at once."},
|
||||
{"chunk": 47, "story": 47, "summary": "Frogs ask Jupiter for a king, scorn the log and the eel he sends, and are given a heron who eats them.", "predicament": "Your group keeps complaining that its mild leader is too weak and demanding a stronger one from above.", "moral": null},
|
||||
{"chunk": 48, "story": 48, "summary": "A father who maimed the snake that killed his son offers it peace, and the snake says neither can ever forget.", "predicament": "You and someone you hurt, and who hurt you far worse, both have reason to hate, and you now offer to make peace.", "moral": "No one truly forgets injuries in the presence of him who caused the injury."},
|
||||
{"chunk": 49, "story": 49, "summary": "A lion woken by a mouse searches his den in fury, and tells a mocking fox it is the mouse's cheek, not the mouse, he resents.", "predicament": "Someone far beneath you has taken a small liberty, and a bystander mocks you for making so much of it.", "moral": "Little liberties are great offenses."},
|
||||
{"chunk": 50, "story": 50, "summary": "A groom curries his horse all day but sells its oats, and the horse asks to be groomed less and fed more.", "predicament": "Someone responsible for you makes a great show of looking after you while quietly skimming off what you actually need.", "moral": null},
|
||||
{"chunk": 51, "story": 51, "summary": "A mule refuses to take a little of the struggling ass's load, the ass dies, and the mule must carry all of it and the ass's hide.", "predicament": "A partner struggling under their share asks you to take a little of it, and you could say it is not your job.", "moral": null},
|
||||
{"chunk": 52, "story": 52, "summary": "An ass envious of the petted lapdog bursts into the house to fawn on his master and is beaten back to the stable.", "predicament": "You work hard while a charming favourite is pampered for doing little, and you are tempted to try the favourite's tricks.", "moral": null},
|
||||
{"chunk": 53, "story": 53, "summary": "Oxen plot to kill the butchers, but an old ox warns that clumsier ones would replace them.", "predicament": "Your group is set on getting rid of the people who harm it, and you suspect whoever replaces them will be worse.", "moral": "Do not be in a hurry to change one evil for another."},
|
||||
{"chunk": 54, "story": 54, "summary": "A shepherd boy raises false alarms of a wolf for fun, and when the wolf truly comes nobody answers his cry.", "predicament": "You have raised false alarms before to amuse yourself, and now there is a real crisis and you need everyone to believe you.", "moral": "There is no believing a liar, even when he speaks the truth."},
|
||||
{"chunk": 55, "story": 55, "summary": "Boys pelting frogs for fun are told by one frog that their sport is death to the frogs.", "predicament": "People above you are amusing themselves at your expense, and what is a game to them is ruin to you.", "moral": null},
|
||||
{"chunk": 56, "story": 56, "summary": "An ass who lightened his salt load by falling in a stream tries the trick with sponges and doubles his burden.", "predicament": "A shortcut that once lightened your load has been noticed, and you are tempted to try it again.", "moral": null},
|
||||
{"chunk": 57, "story": 57, "summary": "A biting dog made to wear a warning bell struts proudly with it until an old hound tells him it is a mark of disgrace.", "predicament": "You have been singled out with a mark you take for an honour, and an old hand tells you it is a public warning.", "moral": "Notoriety is often mistaken for fame."},
|
||||
{"chunk": 58, "story": 58, "summary": "A goatherd feeds stray wild goats better than his own to win them, and they leave, reasoning he would do the same to them.", "predicament": "Someone courting you treats you better than the people who have served them for years, and you wonder what that means for you.", "moral": "Old friends cannot with impunity be sacrificed for new ones."},
|
||||
{"chunk": 59, "story": 59, "summary": "A greying man courts a young and an old woman, who between them pluck out all his hair.", "predicament": "You are courting two parties who want opposite things from you, and each is quietly remaking you to suit themselves.", "moral": "Those who seek to please everybody please nobody."},
|
||||
{"chunk": 60, "story": 60, "summary": "A sick stag's many visitors each eat some of his food, so he dies of want rather than illness.", "predicament": "While you are laid low, a stream of well-wishers visits, and each helps themselves to a little of what you need.", "moral": "Evil companions bring more hurt than profit."},
|
||||
{"chunk": 61, "story": 61, "summary": "A boy stung after touching a nettle gently is told by his mother to grasp it boldly next time.", "predicament": "You approached a prickly problem timidly and got hurt, and someone tells you only a bold, firm grip will work.", "moral": "Whatever you do, do with all your might."},
|
||||
{"chunk": 62, "story": 62, "summary": "An astronomer gazing at the stars falls into a well, and a neighbour asks why he cannot see what is on earth.", "predicament": "You have been so absorbed in lofty plans that you have fallen into trouble right in front of you, and must call for help.", "moral": null},
|
||||
{"chunk": 63, "story": 63, "summary": "Wolves persuade the sheep to send away their guard dogs for peace, and then devour the unguarded flock.", "predicament": "Your enemies offer peace if only you dismiss the people who protect you, claiming those protectors are the cause of all trouble.", "moral": null},
|
||||
{"chunk": 64, "story": 64, "summary": "A cat disguised as a doctor offers to treat ailing birds, who say they will stay well if he goes away.", "predicament": "Someone known to prey on people like you arrives dressed as a helper, offering to fix your troubles if you let them in.", "moral": null},
|
||||
{"chunk": 65, "story": 65, "summary": "A jackdaw decks himself in others' fallen feathers to be chosen king, and the birds pluck them back.", "predicament": "You are presenting yourself for a top post decked out in achievements borrowed from colleagues, who are about to see it.", "moral": null},
|
||||
{"chunk": 66, "story": 66, "summary": "A kid on a rooftop taunts a passing wolf, who says it is the roof that mocks him.", "predicament": "You are safely out of reach of someone powerful for the moment, and it is tempting to taunt them while you can.", "moral": "Time and place often give the advantage to the weak over the strong."},
|
||||
{"chunk": 67, "story": 67, "summary": "A doctor robs a blind old woman while treating her, and when he sues for his fee she says she still cannot see her goods.", "predicament": "Someone you hired has been quietly robbing you while doing the job, and now demands full payment under your agreement.", "moral": null},
|
||||
{"chunk": 68, "story": 68, "summary": "A mother frog puffs herself up to match the ox that killed her son, and is told she would burst first.", "predicament": "Someone far bigger has crushed one of yours, and you are tempted to puff yourself up to look their equal.", "moral": null},
|
||||
{"chunk": 69, "story": 69, "summary": "A dying farmer tells his sons treasure lies in the vineyard, and their digging brings a great harvest.", "predicament": "You want those who will take over from you to work as hard as you did, and plain advice will not move them.", "moral": null},
|
||||
{"chunk": 70, "story": 70, "summary": "A heifer mocks a working ox for his labour and is then led off to be sacrificed while the ox is freed.", "predicament": "An idle favourite mocks you for how hard you work, not seeing why they have been kept free of work.", "moral": null},
|
||||
{"chunk": 71, "story": 71, "summary": "A victorious cock crows on a wall and is carried off by an eagle, leaving the beaten cock to rule.", "predicament": "You have just beaten your rival, and it is tempting to boast about it from the most exposed place you can find.", "moral": "Pride goes before destruction."},
|
||||
{"chunk": 72, "story": 72, "summary": "An old warhorse sent to work a mill laments his former glory, and the miller tells him fortune rises and falls.", "predicament": "Age has moved you from a proud post to drudgery, and you keep bemoaning what you had to whoever will listen.", "moral": null},
|
||||
{"chunk": 73, "story": 73, "summary": "A jealous fox leads the newly elected monkey king into a trap, then mocks him as unfit to rule.", "predicament": "You have just been raised to a high post, and a jealous colleague brings you a tempting windfall they say they kept for you.", "moral": null},
|
||||
{"chunk": 74, "story": 74, "summary": "A soldier pampers his horse in war, drudges it in peace, and finds it cannot carry him when war returns.", "predicament": "Someone valued you highly in a crisis, worked you into the ground when it passed, and now needs you at your best again.", "moral": null},
|
||||
{"chunk": 75, "story": 75, "summary": "The limbs rebel against the idle-seeming belly and stop feeding it, and the whole body weakens.", "predicament": "You and your fellow workers resent a part of the organisation that seems to do nothing, and are tempted to stop supplying it.", "moral": null},
|
||||
{"chunk": 76, "story": 76, "summary": "Maids kill the cock that wakes their mistress early, and she wakes them even earlier.", "predicament": "Your boss works you too early and too long, and you could get rid of the thing that sets the pace.", "moral": null},
|
||||
{"chunk": 77, "story": 77, "summary": "A vine cropped by a goat says she will provide the wine poured over him at his sacrifice.", "predicament": "Someone is stripping you bare without cause, and you know that in time you will have a hand in their downfall.", "moral": null},
|
||||
{"chunk": 78, "story": 78, "summary": "A monkey presents her ugly baby for the beauty prize and, laughed at, says he is the most beautiful to her.", "predicament": "You have put forward work of your own that everyone laughs at, and you are sure it is the best there is.", "moral": null},
|
||||
{"chunk": 79, "story": 79, "summary": "Pigeons invite a hawk to protect them from a kite, and he kills more of them in a day than the kite did in a year.", "predicament": "Threatened by one predator, your group is ready to invite a powerful protector inside who may prove far worse.", "moral": "Avoid a remedy that is worse than the disease."},
|
||||
{"chunk": 80, "story": 80, "summary": "A sprat offers to reconcile warring dolphins and whales, who say they would rather be destroyed than accept him.", "predicament": "Two powerful factions are at war, and you, a nobody, offer to step in and settle their quarrel.", "moral": null},
|
||||
{"chunk": 81, "story": 81, "summary": "A swallow nests in the wall of a court of justice, and her young are eaten by a serpent there.", "predicament": "You trusted the one place meant to protect everyone's rights, and it is exactly there that you have been wronged.", "moral": null},
|
||||
{"chunk": 82, "story": 82, "summary": "An earthen pot floating downstream begs a brass pot to keep away, since any touch would break her.", "predicament": "Someone much stronger than you wants to travel alongside you, and even friendly contact could break you.", "moral": "Equals make the best friends."},
|
||||
{"chunk": 83, "story": 83, "summary": "A shepherd raises a wolf cub to steal lambs from neighbours, and it warns him to watch his own flock.", "predicament": "You have trained someone to take advantage of others for you, and they have just hinted they could do the same to you.", "moral": null},
|
||||
{"chunk": 84, "story": 84, "summary": "A crab tells her son to walk straight, and he asks her to show him how.", "predicament": "You are correcting a junior for a fault you plainly share, and they ask you to demonstrate the right way.", "moral": "Example is more powerful than precept."},
|
||||
{"chunk": 85, "story": 85, "summary": "A father's two daughters, married to a gardener and a tile-maker, wish for rain and for sun, and he cannot back both.", "predicament": "Two people you care for equally need opposite outcomes, and whichever you support you will be working against the other.", "moral": null},
|
||||
{"chunk": 86, "story": 86, "summary": "A mother praises her son's first small thefts, and on his way to execution he bites her ear for not stopping him.", "predicament": "Someone in your charge has brought you a small ill-gotten gain, and you could praise it or stop it now.", "moral": null},
|
||||
{"chunk": 87, "story": 87, "summary": "A weary old woodcutter calls for Death, and when Death comes asks only for help lifting his load.", "predicament": "Worn out, you have loudly wished to be done with it all, and now the chance to quit is actually offered.", "moral": null},
|
||||
{"chunk": 88, "story": 88, "summary": "A fir scorns a useless bramble, which reminds it of the axes waiting to fell the useful.", "predicament": "Someone important sneers that you are of no use, and you know their usefulness is exactly what marks them to be cut down.", "moral": "Better poverty without care, than riches with."},
|
||||
{"chunk": 89, "story": 89, "summary": "A buyer of a black servant, thinking his colour is dirt, scrubs him incessantly and only gives him a cold.", "predicament": "You have taken someone on convinced that their nature is a fault you can scrub away, and your efforts are only hurting them.", "moral": "What’s bred in the bone will stick to the flesh."},
|
||||
{"chunk": 90, "story": 90, "summary": "A frog ties a mouse's foot to his own and drowns him, and a hawk carries off both.", "predicament": "A new acquaintance proposes binding your fortunes tightly together, and you would be on their ground, not yours.", "moral": "Harm hatch, harm catch."},
|
||||
{"chunk": 91, "story": 91, "summary": "A fisherman's net holds the large fish, but the small ones slip back through the meshes.", "predicament": "A sweep that catches the big players lets the small ones slip away, and you are either doing the sweeping or being swept.", "moral": null}
|
||||
]
|
||||
@@ -0,0 +1,48 @@
|
||||
[
|
||||
{"chunk": 92, "story": 92, "summary": "A wounded wolf asks a passing sheep to fetch him water, and the sheep sees he would make her the meat as well.", "predicament": "Someone known to prey on people like you is laid up and asks you for a small favour that would bring you within reach.", "moral": "Hypocritical speeches are easily seen through."},
|
||||
{"chunk": 93, "story": 93, "summary": "An old woman sniffs an empty wine jar and praises how fine the wine must have been.", "predicament": "Only the faint trace of someone's good work is left behind, and you find yourself still admiring what it must have been.", "moral": "The memory of a good deed lives."},
|
||||
{"chunk": 94, "story": 94, "summary": "A man bitten by a dog is advised to feed the dog bread dipped in his blood, and says that would invite every dog to bite him.", "predicament": "Someone who hurt you could be soothed with a reward, and you are advised that appeasing them is the cure.", "moral": "Benefits bestowed upon the evil-disposed increase their means of injuring you."},
|
||||
{"chunk": 95, "story": 95, "summary": "A huntsman and a fisherman swap their catches daily until a neighbour warns that habit will spoil the pleasure.", "predicament": "An exchange with a partner has pleased you both so much that you repeat it daily, and someone warns it will soon go stale.", "moral": "Abstain and enjoy."},
|
||||
{"chunk": 96, "story": 96, "summary": "A fox flatters a crow's beauty and doubts her voice, so she caws and drops her meat to him.", "predicament": "Someone who wants what you hold praises you lavishly, then hints at one doubt you would have to prove wrong by speaking up.", "moral": null},
|
||||
{"chunk": 97, "story": 97, "summary": "A poor widow shears her sheep herself to save the fee and cuts his flesh with the wool.", "predicament": "To save an expert's fee you are doing a skilled job yourself, and you are hurting the thing you meant to profit from.", "moral": "The least outlay is not always the greatest gain."},
|
||||
{"chunk": 98, "story": 98, "summary": "An ass dances on the roof and is beaten, protesting that everyone laughed when the monkey did it.", "predicament": "You copied a favourite's antics that everyone applauded, and are being punished for exactly what they were praised for.", "moral": null},
|
||||
{"chunk": 99, "story": 99, "summary": "A hunted stag hides in an ox-stall, escapes the servants' notice, and is found by the sharp-eyed master.", "predicament": "You are hiding from trouble in a place you should not be, the careless have passed you by, and the sharp-eyed boss is coming.", "moral": null},
|
||||
{"chunk": 100, "story": 100, "summary": "A hound complains that the housedog feasts on his catch, and the housedog tells him to blame the master who taught him so.", "predicament": "You do the hard work while a colleague enjoys its rewards, and they say the fault lies with the boss who arranged it.", "moral": "Children are not to be blamed for the faults of their parents."},
|
||||
{"chunk": 101, "story": 101, "summary": "A lion and a wild ass hunt together, and the lion takes all three shares by rank, partnership and threat.", "predicament": "You went into a venture with a far more powerful partner, and now they are dividing the proceeds entirely their own way.", "moral": "Might makes right."},
|
||||
{"chunk": 102, "story": 102, "summary": "A lion allies with a dolphin, and when the dolphin cannot come ashore to help him fight, calls him a traitor.", "predicament": "An impressive ally from another field swore friendship with you, and now you need help they have no means to give.", "moral": null},
|
||||
{"chunk": 103, "story": 103, "summary": "An eagle is mortally shot with an arrow fledged with his own feathers.", "predicament": "You are being brought down by a rival who is using the very tools, ideas or people you supplied them.", "moral": null},
|
||||
{"chunk": 104, "story": 104, "summary": "A dying kite asks his mother to pray for him, and she asks which god he has not robbed.", "predicament": "In your hour of need you look for someone to speak up for you, and realise you have cheated everyone who could.", "moral": "We must make friends in prosperity if we would have their help in adversity."},
|
||||
{"chunk": 105, "story": 105, "summary": "A lion and a boar fighting over a well see vultures waiting and make peace.", "predicament": "You and a rival are fighting over something small, and you notice others waiting to pick over whoever loses.", "moral": null},
|
||||
{"chunk": 106, "story": 106, "summary": "The mice agree to bell the cat, but none will volunteer to do it.", "predicament": "Everyone agrees a clever plan to deal with the danger, and the only question left is who will risk carrying it out.", "moral": null},
|
||||
{"chunk": 107, "story": 107, "summary": "A one-eyed doe watches the land and is shot from the sea she thought safe.", "predicament": "You have guarded carefully against the threat you expect, and turned your back entirely on the side you assume is safe.", "moral": null},
|
||||
{"chunk": 108, "story": 108, "summary": "Mice appoint generals who wear conspicuous plumes, and in the rout the generals cannot fit into their holes and are eaten.", "predicament": "You have been promoted and given marks of rank, and when things go wrong those marks may be exactly what trap you.", "moral": "The more honour the more danger."},
|
||||
{"chunk": 109, "story": 109, "summary": "A shepherd sells his flock to trade dates by sea, loses all in a storm, and later sneers that the calm sea wants more dates.", "predicament": "A calm opening tempts you to sell what you have and stake it all on a trade you do not know.", "moral": null},
|
||||
{"chunk": 110, "story": 110, "summary": "An ass sees a lion flee at a cock's crow, chases the lion himself, and is torn apart.", "predicament": "You saw someone powerful back down before another person, and are tempted to think they will back down before you too.", "moral": "False confidence often leads into danger."},
|
||||
{"chunk": 111, "story": 111, "summary": "The rivers complain the sea makes them salty, and the sea tells them to stop flowing into it.", "predicament": "People who keep choosing to join you complain that you change them, and are trying to lay the blame on you.", "moral": null},
|
||||
{"chunk": 112, "story": 112, "summary": "A boar whets his tusks with no enemy in sight, saying there is no time to sharpen them once attacked.", "predicament": "Things are quiet with no threat in sight, and someone asks why you are spending effort preparing for trouble.", "moral": "To be well prepared for war is the best guarantee of peace."},
|
||||
{"chunk": 113, "story": 113, "summary": "A milkmaid counts the future profits of her milk, tosses her head at imagined suitors, and spills the pail.", "predicament": "You are carrying your only real asset while already spending, in your head, everything you hope it will turn into.", "moral": null},
|
||||
{"chunk": 114, "story": 114, "summary": "A bee asks Jupiter for a deadly sting, and gets one that kills her if she uses it.", "predicament": "A powerful patron has promised you any favour, and you are tempted to ask for the power to punish anyone touching what is yours.", "moral": "Evil wishes, like chickens, come home to roost."},
|
||||
{"chunk": 115, "story": 115, "summary": "A lean wolf admires a well-fed dog until he sees the heavy collar and log, and wants none of it.", "predicament": "A well-fed insider shows you how comfortably their employer keeps them, and you notice the chain they wear for it.", "moral": null},
|
||||
{"chunk": 116, "story": 116, "summary": "A besieged city asks how to defend itself, and the bricklayer, carpenter and currier each propose their own trade.", "predicament": "In a crisis everyone is asked for the best solution, and each expert recommends exactly what they happen to sell.", "moral": "Every man for himself."},
|
||||
{"chunk": 117, "story": 117, "summary": "An ass carrying a sacred image thinks the crowd bows to him and balks, until the driver's whip corrects him.", "predicament": "People bow as you pass, and you are tempted to believe it is for you rather than for what you happen to carry.", "moral": "They are not wise who give to themselves the credit due to others."},
|
||||
{"chunk": 118, "story": 118, "summary": "A storm-bound man kills his sheep, goats and then his oxen, and his dogs flee reasoning they are next.", "predicament": "In hard times your employer has sacrificed even the people who earn for them, and you wonder how long before it is you.", "moral": "He is not to be trusted as a friend who mistreats his own family."},
|
||||
{"chunk": 119, "story": 119, "summary": "An old hound loses his grip on a boar and, abused by his master, asks to be praised for what he was.", "predicament": "Age has cost you the ability you were known for, and your boss is berating you for failing at it.", "moral": null},
|
||||
{"chunk": 120, "story": 120, "summary": "A traveller says 'I' found the axe but 'we' are undone when the owner comes, and his companion holds him to 'I'.", "predicament": "A companion kept a find to themselves, and now that it has brought trouble they want you to share the blame.", "moral": "He who shares the danger ought to share the prize."},
|
||||
{"chunk": 121, "story": 121, "summary": "A dying old lion is struck by the boar and the bull, and then kicked by the ass.", "predicament": "Once powerful, you are now weak, and even the least of those you once ruled are lining up to strike at you.", "moral": null},
|
||||
{"chunk": 122, "story": 122, "summary": "A wolf sees shepherds eating mutton and remarks on the outcry there would be if he did the same.", "predicament": "The people who condemn you for something are openly doing the very same thing themselves.", "moral": null},
|
||||
{"chunk": 123, "story": 123, "summary": "Travellers wait for what they think is a ship, and it turns out to be a bundle of sticks.", "predicament": "You have waited a long while for something that looked grand from far away, and it is shrinking as it comes closer.", "moral": "Our mere anticipations of life outrun its realities."},
|
||||
{"chunk": 124, "story": 124, "summary": "A traveller and the ass's owner fight over who hired the ass's shadow, and the ass runs off.", "predicament": "You and a client are locked in a bitter dispute over a technicality while the thing you both needed slips away.", "moral": "In quarreling about the shadow we often lose the substance."},
|
||||
{"chunk": 125, "story": 125, "summary": "An overworked ass keeps asking for a new master and each is worse, ending with a tanner.", "predicament": "You are unhappy with your boss and could ask for a transfer, though you have asked before and each move was worse.", "moral": null},
|
||||
{"chunk": 126, "story": 126, "summary": "Mercury in disguise asks a sculptor the price of his own statue, expecting it to be highest, and is offered it free.", "predicament": "You go incognito to find out how highly people rate you, expecting to hear you are the most valued of all.", "moral": null},
|
||||
{"chunk": 127, "story": 127, "summary": "A woodcutter hides a fox but points to it while denying it, and the fox leaves without thanks.", "predicament": "Someone claims you owe them for protecting you, when their words protected you and their gestures quietly gave you away.", "moral": null},
|
||||
{"chunk": 128, "story": 128, "summary": "An uprooted oak asks the reeds how they survive the wind, and they say they bend rather than fight.", "predicament": "A force far stronger than you is sweeping through, and you could stand rigid against it or bend until it passes.", "moral": "Stoop to conquer."},
|
||||
{"chunk": 129, "story": 129, "summary": "A farmer shuts a lion in his farmyard, loses his flocks, and has to let it go.", "predicament": "You have a chance to trap someone far more dangerous than you, but you would be locked in with them.", "moral": null},
|
||||
{"chunk": 130, "story": 130, "summary": "A lion takes a stolen lamb from a wolf, who protests the injustice, and the lion jeers at his claim.", "predicament": "Someone stronger has taken from you something you had taken dishonestly yourself, and you want to protest.", "moral": null},
|
||||
{"chunk": 131, "story": 131, "summary": "A birdcatcher spares his decoy partridge and his cock after each pleads usefulness, but still must feed his guest.", "predicament": "Your boss needs to cut someone and you plead how useful you are, but the need is pressing and must be met somehow.", "moral": "Necessity knows no law."},
|
||||
{"chunk": 132, "story": 132, "summary": "A dove saves a drowning ant with a leaf, and the ant later stings a birdcatcher to save the dove.", "predicament": "Someone you once helped for nothing sees a threat to you coming that you cannot see, and has a chance to repay you.", "moral": null},
|
||||
{"chunk": 133, "story": 133, "summary": "Despairing hares rush to drown themselves, see frogs flee from them, and take heart.", "predicament": "You feel so weak and harried that you are ready to give up entirely, and then notice others who fear even you.", "moral": null},
|
||||
{"chunk": 134, "story": 134, "summary": "A monkey copies the fishermen's netting, gets tangled and drowns.", "predicament": "You have watched experts do a job and are about to try it yourself with their tools, having never learned how.", "moral": null},
|
||||
{"chunk": 135, "story": 135, "summary": "A swan seized by mistake for the goose sings and is known and spared.", "predicament": "In the dark you have been mistaken for someone marked to be cut, and only showing your one real talent will set it right.", "moral": null},
|
||||
{"chunk": 136, "story": 136, "summary": "A doe escaping hunters takes refuge in a lion's cave and is killed there.", "predicament": "Fleeing one danger, you are about to take shelter with someone who may be far more dangerous than what chases you.", "moral": "In avoiding one evil, care must be taken not to fall into another."},
|
||||
{"chunk": 137, "story": 137, "summary": "A fisherman refuses to release a small fish that promises to be worth more when grown.", "predicament": "Someone you have caught asks you to let them go now, promising you a much bigger return later.", "moral": null}
|
||||
]
|
||||
@@ -0,0 +1,49 @@
|
||||
[
|
||||
{"chunk": 138, "story": 138, "summary": "A timid hunter asks a woodman for the lion's tracks and, offered the lion itself, says he only wanted the tracks.", "predicament": "You have talked boldly about tackling a formidable opponent, and someone offers to take you to face them right now.", "moral": "The hero is brave in deeds as well as words."},
|
||||
{"chunk": 139, "story": 139, "summary": "A fox gorges on food left in a hollow tree and is too swollen to get out.", "predicament": "You helped yourself so freely to what was lying unguarded that you can no longer get out of the position it put you in.", "moral": null},
|
||||
{"chunk": 140, "story": 140, "summary": "Two frogs seeking a new home find a deep well, and one asks how they would get out if it dried up.", "predicament": "You and a partner must move, and an attractive opening has appeared that would be very hard to leave if it failed.", "moral": "Do nothing without a regard to the consequences."},
|
||||
{"chunk": 141, "story": 141, "summary": "A flaring lamp boasts it outshines the sun and is blown out by a gust.", "predicament": "You are shining brightly just now and are tempted to claim you outshine the people who truly lead.", "moral": null},
|
||||
{"chunk": 142, "story": 142, "summary": "A camel-driver asks his camel whether it would rather go uphill or down, and the camel asks whether the level road is closed.", "predicament": "Your boss offers you a choice between two hard assignments, as if the easy option you both know exists were not there.", "moral": null},
|
||||
{"chunk": 143, "story": 143, "summary": "A miller and his son change how they travel with their ass at every passer-by's criticism until they lose the ass in the river.", "predicament": "Every passer-by criticises how you are doing the job, and each time you change it to please them, a new critic appears.", "moral": null},
|
||||
{"chunk": 144, "story": 144, "summary": "A cat pretends to be dead on a peg to lure the mice, and one says it will not come near her even if she turns into a sack.", "predicament": "Someone who has already done you harm now appears harmless, even lifeless, and is plainly waiting for you to come out.", "moral": null},
|
||||
{"chunk": 145, "story": 145, "summary": "A mouse bites a bull, hides in its hole, and bites him again while he sleeps.", "predicament": "Someone powerful is furious with you but cannot reach you where you are safe, and you could sting them again.", "moral": null},
|
||||
{"chunk": 146, "story": 146, "summary": "A dog invited by a friend to his master's feast is thrown out by the cook and pretends he was too drunk to remember.", "predicament": "An insider invited you to help yourself at their employer's expense, and you were thrown out and must explain it to your peers.", "moral": null},
|
||||
{"chunk": 147, "story": 147, "summary": "Thieves steal a cock who pleads he wakes men to work, and they say that is why he must die.", "predicament": "You plead your usefulness to people you have fallen among, not seeing that your usefulness is exactly what they cannot stand.", "moral": "The safeguards of virtue are hateful to those with evil intentions."},
|
||||
{"chunk": 148, "story": 148, "summary": "Trained monkeys dance like courtiers until someone throws nuts and they brawl for them.", "predicament": "Your team has learned to perform with polish, and a rival is about to toss something in front of them to expose them.", "moral": null},
|
||||
{"chunk": 149, "story": 149, "summary": "A farmer takes revenge on a fox by setting its tail alight, and it runs through his own wheat.", "predicament": "You finally have the person who has been robbing you at your mercy, and your revenge could easily burn your own harvest.", "moral": null},
|
||||
{"chunk": 150, "story": 150, "summary": "Fortune wakes a traveller asleep on a well's brink, lest she be blamed for his fall.", "predicament": "You are careless in a dangerous spot, and if you come to grief you will blame bad luck rather than yourself.", "moral": "Everyone is more or less master of his own fate."},
|
||||
{"chunk": 151, "story": 151, "summary": "A seagull bursts its gullet on too large a fish, and a kite says a bird of the air should not feed from the sea.", "predicament": "You have taken on far more than you can manage in a field that is not yours, and it is tearing you apart.", "moral": "Every man should be content to mind his own business."},
|
||||
{"chunk": 152, "story": 152, "summary": "A lion and a bear fight over a kid until both are exhausted, and a fox runs off with it.", "predicament": "You and a powerful rival are exhausting each other over one prize, while someone else circles waiting to walk off with it.", "moral": "It sometimes happens that one man has all the toil, and another all the profit."},
|
||||
{"chunk": 153, "story": 153, "summary": "A philosopher decrying Providence for drowning the innocent with the guilty tramples an anthill for one sting.", "predicament": "You are loudly condemning those above for punishing many for one person's fault, and you have just done the same to those below.", "moral": null},
|
||||
{"chunk": 154, "story": 154, "summary": "A peasant frees an eagle, which later snatches his bundle to lure him from under a wall that then falls.", "predicament": "Someone you once freed from a trap suddenly snatches something of yours, and you are angry without knowing why they did it.", "moral": null},
|
||||
{"chunk": 155, "story": 155, "summary": "A leopard and a fox dispute their beauty, and the fox says his is in the mind.", "predicament": "A colleague shows off their visible credentials one by one to prove they are the better, and you have only your wits.", "moral": null},
|
||||
{"chunk": 156, "story": 156, "summary": "A lion leaves a sleeping hare to chase a hart, loses the hart, and returns to find the hare gone.", "predicament": "You have an easy win within reach, and a bigger, faster prize has just run past that you could chase instead.", "moral": null},
|
||||
{"chunk": 157, "story": 157, "summary": "A poor carpenter smashes the idol that never helped him, and gold pours out of its head.", "predicament": "You have courted a patron respectfully for years with nothing to show, and anger tempts you to smash the relationship.", "moral": null},
|
||||
{"chunk": 158, "story": 158, "summary": "A lion eats the ass who divided their spoil equally, and the fox, having learned, leaves himself a morsel.", "predicament": "A powerful partner asks you to divide the spoils, and you have just seen what happened to the last one who divided them fairly.", "moral": "Happy is the man who learns from the misfortunes of others."},
|
||||
{"chunk": 159, "story": 159, "summary": "A bull hiding from a lion in a cave is butted by a goat, and says he will answer once the lion is gone.", "predicament": "While you are sheltering from a bigger threat, someone lesser takes the chance to attack you, knowing you cannot answer yet.", "moral": "It shows an evil disposition to take advantage of a friend in distress."},
|
||||
{"chunk": 160, "story": 160, "summary": "A bald knight's wig blows off during a hunt, and he joins the laughter with a joke.", "predicament": "Something you were hiding about yourself has just been exposed in front of your companions, and everyone is laughing.", "moral": null},
|
||||
{"chunk": 161, "story": 161, "summary": "The oaks complain they are always felled, and Jupiter says it is because they are so useful.", "predicament": "You complain that you are always picked for the hardest jobs, and are told it is because you are so good at them.", "moral": null},
|
||||
{"chunk": 162, "story": 162, "summary": "A monkey mother smothers her favourite twin with love while the neglected one thrives.", "predicament": "You lavish all your care on one favourite protege and neglect another, and your attention may be what harms the favourite.", "moral": "The best intentions will not always ensure success."},
|
||||
{"chunk": 163, "story": 163, "summary": "A hound gives up chasing a hare and, mocked, says he ran for a dinner but the hare for his life.", "predicament": "Someone mocks you for losing to a weaker rival, but they were fighting for everything and you only for a little.", "moral": null},
|
||||
{"chunk": 164, "story": 164, "summary": "A shepherd is about to shut a wolf in the fold, and his dog asks how the sheep can then be safe.", "predicament": "Your boss is about to bring a known predator into the team, and you are the one placed to say so.", "moral": null},
|
||||
{"chunk": 165, "story": 165, "summary": "An oak split by wedges cut from its own branches grieves more at them than at the axe.", "predicament": "You are being broken apart by people who came from your own side, and it hurts more than any outside attack.", "moral": "Misfortunes springing from ourselves are the hardest to bear."},
|
||||
{"chunk": 166, "story": 166, "summary": "A snake tormented by a wasp puts its head under a wagon wheel so they die together.", "predicament": "Someone is tormenting you without pause and you cannot shake them, and you could take them down with you.", "moral": null},
|
||||
{"chunk": 167, "story": 167, "summary": "A peacock mocks a plain crane's plumage, and the crane says he flies to the heavens while the peacock walks the dunghill.", "predicament": "A showy colleague mocks your plain appearance in front of others, and you could answer with what you can actually do.", "moral": "Fine feathers don’t make fine birds."},
|
||||
{"chunk": 168, "story": 168, "summary": "A couple kill their hen that lays golden eggs to get the gold inside and find nothing.", "predicament": "Something steadily brings you a small, sure return, and you are tempted to break it open to get everything at once.", "moral": null},
|
||||
{"chunk": 169, "story": 169, "summary": "An ass who falls in a pond groans, and the frogs ask what he would do if he lived there always.", "predicament": "You are making a great fuss about a small setback in front of people who live with far worse every day.", "moral": "Men often bear little grievances with less courage than they do large misfortunes."},
|
||||
{"chunk": 170, "story": 170, "summary": "A crow jealous of the raven's standing as an omen caws at travellers, who dismiss her cry.", "predicament": "Envying a colleague whose word carries weight, you are tempted to speak up as if yours carried the same.", "moral": "Those who assume a character which does not belong to them, only make themselves ridiculous."},
|
||||
{"chunk": 171, "story": 171, "summary": "The trees give a man a young ash for his axe handle, and he fells the great trees with it.", "predicament": "Someone asks your group to give up just one small, junior member, and that concession is what they need to cut down the rest.", "moral": null},
|
||||
{"chunk": 172, "story": 172, "summary": "Wolves urge the sheepdogs to betray the flock and live as brothers, and then tear the dogs apart.", "predicament": "Rivals flatter you as one of their own and urge you to hand over what you guard and share the spoils with them.", "moral": null},
|
||||
{"chunk": 173, "story": 173, "summary": "A lioness mourns her cub killed by a bull, and a hunter reminds her how many she has made mourn.", "predicament": "You are loudly grieving a loss, and someone reminds you how many people have suffered the same at your hands.", "moral": null},
|
||||
{"chunk": 174, "story": 174, "summary": "A lion wounded by a bowman's arrow flees, saying he dare not face the man if that is his messenger.", "predicament": "An opponent's first warning shot has already hurt you badly, and an adviser urges you not to give up at the first blow.", "moral": "Be on guard against men who can strike from a distance."},
|
||||
{"chunk": 175, "story": 175, "summary": "Men first flee the huge camel, then, finding it meek, bridle it and let a child drive it.", "predicament": "People who once feared you have noticed you never push back, and are growing bolder by the day.", "moral": "Use serves to overcome dread."},
|
||||
{"chunk": 176, "story": 176, "summary": "A crab that moved inland to feed is eaten by a fox and blames himself for leaving the sea.", "predicament": "You left the field you are made for to chase better prospects elsewhere, and now you are exposed and out of your depth.", "moral": "Contentment with our lot is an element of happiness."},
|
||||
{"chunk": 177, "story": 177, "summary": "An ass refuses to flee the enemy with his master, since any master will load him the same.", "predicament": "Your boss urges you to fight off a takeover, and you suspect any new owner would work you exactly the same.", "moral": "In a change of government the poor change nothing beyond the name of their master."},
|
||||
{"chunk": 178, "story": 178, "summary": "A wounded fox refuses to have the sated flies driven off, lest hungrier ones replace them.", "predicament": "Someone offers to rid you of the people draining you, but those ones are already well fed and hungrier ones would follow.", "moral": null},
|
||||
{"chunk": 179, "story": 179, "summary": "A woman doubles her hen's feed to get two eggs a day, and it grows fat and stops laying.", "predicament": "A reliable source gives you a steady return, and you are thinking of pushing extra into it to double what it produces.", "moral": null},
|
||||
{"chunk": 180, "story": 180, "summary": "Kites that could once sing try to neigh like horses and lose their song.", "predicament": "You are so taken with a colleague's style that you are trying to copy it, and your own gift is starting to fade.", "moral": "The desire for imaginary benefits often involves the loss of present blessings."},
|
||||
{"chunk": 181, "story": 181, "summary": "A hound alternately bites and fawns on a hare, who asks him to show his true colours.", "predicament": "Someone alternately attacks you and flatters you, and you cannot tell whether to treat them as friend or enemy.", "moral": "No one can be a friend if you know not whether to trust or distrust him."},
|
||||
{"chunk": 182, "story": 182, "summary": "Hares at war with eagles ask the foxes for help, who decline knowing both sides.", "predicament": "Someone weak who has picked a fight with the powerful asks you to join their side.", "moral": "Count the cost before you commit yourselves."},
|
||||
{"chunk": 183, "story": 183, "summary": "A calf offers to show a bull the way through a narrow passage, and the bull says he knew it before the calf was born.", "predicament": "A newcomer offers to show you how to do something you have been doing since before they arrived.", "moral": null},
|
||||
{"chunk": 184, "story": 184, "summary": "A stag asks a sheep for a loan with the wolf as surety, and the sheep declines, doubting she could ever collect.", "predicament": "Someone asks you for a loan and offers as guarantor another person well known for taking what they want and vanishing.", "moral": "Two blacks do not make one white."}
|
||||
]
|
||||
@@ -0,0 +1,45 @@
|
||||
[
|
||||
{"chunk": 185, "story": 185, "summary": "A cat tells an eagle and a sow each that the other plans to kill her young, and both starve in fear while the cat feeds.", "predicament": "A colleague privately warns you that your neighbour is plotting against you, and you suspect they said the same to your neighbour.", "moral": null},
|
||||
{"chunk": 186, "story": 186, "summary": "A huge wolf nicknamed 'Lion' leaves the wolves to live among lions, and a fox mocks his conceit.", "predicament": "Your peers jokingly call you the equal of those at the top, and you are tempted to leave them and move among the top.", "moral": null},
|
||||
{"chunk": 187, "story": 187, "summary": "An idle, overfed mule boasts he is a racer's son, and after a long hard journey decides his father was an ass.", "predicament": "After an easy spell you have been boasting of your pedigree and speed, and tomorrow brings a long, hard assignment.", "moral": null},
|
||||
{"chunk": 188, "story": 188, "summary": "A fortune-teller runs home on hearing his house is being robbed, and a neighbour asks why he did not foresee it.", "predicament": "You make your living advising others on what is coming, and a disaster has just struck you that you failed to foresee.", "moral": null},
|
||||
{"chunk": 189, "story": 189, "summary": "A frog refuses a friend's invitation to leave his exposed gully for a safe pond and is crushed by a wagon.", "predicament": "A friend urges you to leave your familiar but exposed position for a safer one, and you cannot bring yourself to move.", "moral": "A willful man will have his way to his own hurt."},
|
||||
{"chunk": 190, "story": 190, "summary": "A countryman frees an eagle from a serpent, and the eagle later knocks away the drink the serpent poisoned.", "predicament": "You stepped in to rescue someone from a dangerous enemy, and that enemy has quietly set a trap for you in return.", "moral": null},
|
||||
{"chunk": 191, "story": 191, "summary": "A thirsty crow raises the water in a pitcher by dropping in stones one by one.", "predicament": "What you urgently need is just out of reach, and none of the obvious approaches has worked.", "moral": "Necessity is the mother of invention."},
|
||||
{"chunk": 192, "story": 192, "summary": "A thief frightens an innkeeper with a tale that he turns into a wolf, and makes off with his coat.", "predicament": "A stranger tells you an alarming story and urges you to act at once, and the action would leave your goods in their hands.", "moral": "Every tale is not to be believed."},
|
||||
{"chunk": 193, "story": 193, "summary": "A hart hidden under a vine eats its leaves once the hunters pass, and is spotted and shot.", "predicament": "Someone sheltered you when you were in danger, and now that the danger seems past you are tempted to help yourself to their things.", "moral": null},
|
||||
{"chunk": 194, "story": 194, "summary": "A gnat stings a lion into tearing his own face, then is caught and eaten by a spider.", "predicament": "You have just beaten a powerful opponent and are celebrating loudly, not watching for small, patient dangers.", "moral": null},
|
||||
{"chunk": 195, "story": 195, "summary": "A fox that cannot reach the grapes walks away saying they are sour.", "predicament": "You tried everything to get something you wanted and failed, and people are watching to see how you take it.", "moral": null},
|
||||
{"chunk": 196, "story": 196, "summary": "A roadside walnut tree is beaten with sticks by passers-by who want its nuts.", "predicament": "The more you give, the more roughly people treat you to get more, and those you feed are the ones doing the damage.", "moral": null},
|
||||
{"chunk": 197, "story": 197, "summary": "A kid caught by a wolf asks him to pipe a last dance, and the music brings hounds that chase off the wolf.", "predicament": "Someone who has you cornered is enjoying their power, and you could ask for one small favour that might draw help.", "moral": null},
|
||||
{"chunk": 198, "story": 198, "summary": "A dolphin carrying a monkey from a wreck drowns him when he lies about his noble birth and 'knowing' the Piraeus.", "predicament": "Someone is helping you because they think you are one of their own, and asks questions you can only answer by lying.", "moral": null},
|
||||
{"chunk": 199, "story": 199, "summary": "A horse accepts a man's bit and saddle to get revenge on a stag, and is enslaved for good.", "predicament": "To get back at a newcomer who shares your territory, someone powerful offers help if you accept their harness.", "moral": null},
|
||||
{"chunk": 200, "story": 200, "summary": "A jackdaw painted white lives among doves until he chatters, and is then rejected by both doves and jackdaws.", "predicament": "You have disguised yourself as one of a better-fed group to share their benefits, and must keep silent to pass.", "moral": null},
|
||||
{"chunk": 201, "story": 201, "summary": "A monkey claims a cemetery's monuments honour his ancestors, and a fox notes no ancestor can contradict him.", "predicament": "You are inflating your background to a companion, and they have noticed that nobody who could contradict you is around.", "moral": "A false tale often betrays itself."},
|
||||
{"chunk": 202, "story": 202, "summary": "A man sends his disliked wife to her father's house, and her report of the herdsmen's looks confirms her effect on everyone.", "predicament": "Someone you are responsible for is disliked by everyone around them, and you want to learn whether it is them or the place.", "moral": "Straws show how the wind blows."},
|
||||
{"chunk": 203, "story": 203, "summary": "A horse, ox and dog repay a man's shelter by giving the stages of his life their own tempers.", "predicament": "People you took in during hard times want to repay you by shaping you in their own likeness.", "moral": null},
|
||||
{"chunk": 204, "story": 204, "summary": "A thief throws meat to a housedog, who says the sudden kindness only makes him more watchful.", "predicament": "A stranger showers you with sudden favours just as you are guarding something for your employer.", "moral": null},
|
||||
{"chunk": 205, "story": 205, "summary": "An ape king rewards a liar's flattery and has his court maul a truthful traveller.", "predicament": "A vain leader asks your honest opinion of them and their court, and has just richly rewarded someone who flattered them.", "moral": null},
|
||||
{"chunk": 206, "story": 206, "summary": "A fox terrified at first sight of a lion grows bolder each meeting until he chats with him.", "predicament": "You were terrified the first time you met someone very powerful, and each meeting since, you have been growing bolder.", "moral": "Acquaintance softens prejudices."},
|
||||
{"chunk": 207, "story": 207, "summary": "An old weasel rolls in flour to look like food, and an old mouse sees through it.", "predicament": "Something tempting lies in a dark corner, and you notice that everyone who went for it has vanished.", "moral": null},
|
||||
{"chunk": 208, "story": 208, "summary": "A drowning boy asks a traveller who scolds him to help first and scold afterwards.", "predicament": "You are in serious trouble and the person who could help is busy lecturing you on how you got there.", "moral": "Counsel without help is useless."},
|
||||
{"chunk": 209, "story": 209, "summary": "A peacock complains to Juno that he cannot sing, and she tells him each has his own gift.", "predicament": "You are admired for one gift but resent being laughed at for lacking another that a colleague has.", "moral": null},
|
||||
{"chunk": 210, "story": 210, "summary": "A wolf follows a flock harmlessly for so long that the shepherd leaves him in charge, and he kills the flock.", "predicament": "Someone you once guarded against has behaved so well for so long that you are about to leave them in charge.", "moral": null},
|
||||
{"chunk": 211, "story": 211, "summary": "Hares argue that all beasts should be equal, and lions say the words lack claws and teeth.", "predicament": "You are arguing before the powerful that everyone should be treated as equals, and you have nothing to back it with.", "moral": null},
|
||||
{"chunk": 212, "story": 212, "summary": "A man selling an image of Mercury claims it brings wealth, and says he sells because its gifts come too slowly.", "predicament": "You are selling something by promising it makes its owner rich, and a customer asks why you would part with it.", "moral": null},
|
||||
{"chunk": 213, "story": 213, "summary": "A hawk refuses a nightingale's plea to let him go for larger birds not yet in sight.", "predicament": "You have someone in your power who argues you should let them go and chase a bigger target instead.", "moral": null},
|
||||
{"chunk": 214, "story": 214, "summary": "A lark stays put while the farmer relies on friends to reap, and moves when he says he will reap himself.", "predicament": "Your boss keeps announcing a shake-up, and you must judge whether they mean it this time or will leave it to others again.", "moral": "Self-help is the best help."},
|
||||
{"chunk": 215, "story": 215, "summary": "A fox flatters a cock in a tree, who invites him to wake the 'porter' below, and the dog kills the fox.", "predicament": "A stranger known to prey on people like you is praising you warmly and asking to be let in to meet you properly.", "moral": null},
|
||||
{"chunk": 216, "story": 216, "summary": "Cranes fly off at a birdcatcher's approach, while the heavier geese are caught.", "predicament": "Danger is coming for everyone in your position, and the nimble are already slipping away while you are weighed down.", "moral": null},
|
||||
{"chunk": 217, "story": 217, "summary": "An ass feigns a thorn in his hoof, and when the wolf goes to pull it he kicks his teeth in.", "predicament": "Someone stronger has you cornered, and you could ask them for a small service that would put them off their guard.", "moral": null},
|
||||
{"chunk": 218, "story": 218, "summary": "A goat envious of the ass advises him to feign illness, and the goat's lungs are then prescribed to heal him.", "predicament": "Out of envy you are urging a colleague to fake an illness to escape work, and the fallout could land on you.", "moral": null},
|
||||
{"chunk": 219, "story": 219, "summary": "A lion invites a bull to dine on a sheep, and the bull sees only spits and cauldrons big enough for a bull.", "predicament": "Someone who would gain by your downfall invites you to share a feast, and the preparations look suspiciously large.", "moral": null},
|
||||
{"chunk": 220, "story": 220, "summary": "A fox finds a lifelike mask in an actor's house and says it is beautiful but has no brains.", "predicament": "An impressive-looking candidate is presented to you, and you notice there seems to be nothing behind the face.", "moral": null},
|
||||
{"chunk": 221, "story": 221, "summary": "An owl kept awake by a grasshopper flatters her voice and invites her to drink, then kills her.", "predicament": "Someone you have been annoying suddenly praises you and invites you in for a treat, after asking you nicely to stop.", "moral": null},
|
||||
{"chunk": 222, "story": 222, "summary": "A fowler staring up at a thrush treads on a viper and is fatally stung.", "predicament": "You are so intent on a target you are stalking that you have stopped watching where you are putting your own feet.", "moral": null},
|
||||
{"chunk": 223, "story": 223, "summary": "A proud horse threatens a laden ass, then broken-winded is put to a dungcart and mocked by the ass.", "predicament": "Someone high in favour sneers at you and your heavy load, and you could answer back or hold your peace.", "moral": null},
|
||||
{"chunk": 224, "story": 224, "summary": "A lion afraid of three bulls together separates them with sly talk and eats them one by one.", "predicament": "Someone who fears you and your colleagues together is quietly talking each of you into going your own way.", "moral": "Union is strength."},
|
||||
{"chunk": 225, "story": 225, "summary": "A wolf urges a goat on a cliff to come down to the tender grass, and she knows he wants to eat her.", "predicament": "You hold a secure position, and someone who would profit from your fall urges you down to where the rewards are richer.", "moral": null},
|
||||
{"chunk": 226, "story": 226, "summary": "A fly on the axle threatens to sting the mule, who says he heeds only the driver.", "predicament": "Someone with no authority over you is loudly telling you to hurry up and threatening you if you do not.", "moral": null},
|
||||
{"chunk": 227, "story": 227, "summary": "Fishermen rejoice at heavy nets that turn out full of stones, and an old man says sorrow is twin to joy.", "predicament": "You celebrated early over what looked like a huge haul, and it has turned out to be mostly worthless.", "moral": null}
|
||||
]
|
||||
@@ -0,0 +1,47 @@
|
||||
[
|
||||
{"chunk": 228, "story": 228, "summary": "A country mouse visits his friend's rich town house, is chased from every meal, and goes back to his safe plain fare.", "predicament": "A well-off friend urges you to leave your plain, safe post for their lavish one, where every meal comes with a fright.", "moral": null},
|
||||
{"chunk": 229, "story": 229, "summary": "An ape judging a wolf's theft charge against a fox rules that the wolf lost nothing and the fox stole anyway.", "predicament": "You must settle a dispute between two people with bad reputations, and you believe neither of their accounts.", "moral": "The dishonest, if they act honestly, get no credit."},
|
||||
{"chunk": 230, "story": 230, "summary": "Wasps and partridges promise a farmer service for water, and he says his oxen already do it without promises.", "predicament": "Newcomers promise you great service in return for a favour now, while your steady workers already do it without promising.", "moral": null},
|
||||
{"chunk": 231, "story": 231, "summary": "A father tells his vain son and plain, spiteful daughter both to look in the mirror daily, to mind their conduct.", "predicament": "Two people in your care are at odds, one vain of their gifts and the other spiteful for lacking them, and both appeal.", "moral": null},
|
||||
{"chunk": 232, "story": 232, "summary": "Dogs tear at a lion's skin, and a fox says they would learn a lion's claws if it were alive.", "predicament": "Someone who once ruled over you is gone for good, and everyone is now bravely tearing into their reputation.", "moral": "It is easy to kick a man that is down."},
|
||||
{"chunk": 233, "story": 233, "summary": "A blind man feeling a wolf cub cannot say if it is fox or wolf, but knows it must not go in the sheepfold.", "predicament": "You are asked to vouch for a young newcomer whose record is unclear, but whose instincts are plainly those of a predator.", "moral": "Evil tendencies are shown in early life."},
|
||||
{"chunk": 234, "story": 234, "summary": "A failed cobbler poses as a doctor with a cure-all, and confesses when the governor tests him with 'poison'.", "predicament": "Your reputation as an expert was built on noise rather than skill, and someone powerful is about to test it on you.", "moral": null},
|
||||
{"chunk": 235, "story": 235, "summary": "A wolf says he left a field of oats untouched for the horse, who says he would not if wolves ate oats.", "predicament": "Someone with a bad reputation makes a show of having saved something for you that they could never have used themselves.", "moral": "Men of evil reputation, when they perform a good deed, fail to get credit for it."},
|
||||
{"chunk": 236, "story": 236, "summary": "Two enemies on a sinking ship sit at opposite ends, and one is content if his enemy's end sinks first.", "predicament": "You and a bitter enemy are going down together, and you care more about seeing them fall first than about saving yourself.", "moral": null},
|
||||
{"chunk": 237, "story": 237, "summary": "A partridge pecked by gamecocks thinks it is because he is a stranger, until he sees them fight each other.", "predicament": "You are new and the old hands keep attacking you, and you assume it is because you are an outsider.", "moral": null},
|
||||
{"chunk": 238, "story": 238, "summary": "A fox reviles a caged lion, who says it is his mischance, not the fox, that insults him.", "predicament": "Someone powerful is trapped by circumstances for now, and it is tempting to insult them while they cannot answer.", "moral": null},
|
||||
{"chunk": 239, "story": 239, "summary": "A frog proclaims himself a physician, and a fox asks why he cannot cure his own gait and skin.", "predicament": "Someone offers to fix everyone else's problems, while their own obvious failings are there for all to see.", "moral": null},
|
||||
{"chunk": 240, "story": 240, "summary": "A wolf accuses the absent fox to the sick lion, and the fox prescribes the wolf's warm skin as the cure.", "predicament": "A rival is denouncing you to the boss just as you walk in, and you could turn the boss's anger back on them.", "moral": null},
|
||||
{"chunk": 241, "story": 241, "summary": "A dog curled against winter cold plans a house, but stretched out in summer thinks one too big a job.", "predicament": "In hard times you resolved to build yourself some security, and now that times are easy it seems too big a job.", "moral": null},
|
||||
{"chunk": 242, "story": 242, "summary": "The north wind blows in vain to strip a traveller's cloak, and the sun's warmth makes him take it off.", "predicament": "You need someone to give something up, and the harder you push the tighter they cling to it.", "moral": "Persuasion is better than Force."},
|
||||
{"chunk": 243, "story": 243, "summary": "A crow breaks his vow to Apollo after being freed, and when caught again Mercury will not believe his new vow.", "predicament": "You broke your promise to the last person who got you out of trouble, and now you need a new patron to trust you.", "moral": null},
|
||||
{"chunk": 244, "story": 244, "summary": "A fox serves a crane soup in a flat dish, and the crane repays him with a narrow-necked jar.", "predicament": "Someone humiliated you with a show of hospitality you could not use, and now it is your turn to host them.", "moral": null},
|
||||
{"chunk": 245, "story": 245, "summary": "A wolf seeing his long evening shadow thinks he should be king, and a lion kills him.", "predicament": "Things are going so well that you feel bigger than the people above you and start to think you deserve their place.", "moral": null},
|
||||
{"chunk": 246, "story": 246, "summary": "A bat fights for whichever side, birds or beasts, is winning, and after peace both condemn him.", "predicament": "Two factions are at war, and you could keep switching to whichever side is winning at the moment.", "moral": null},
|
||||
{"chunk": 247, "story": 247, "summary": "A spendthrift sells his last cloak on seeing an early swallow, and the frost returns.", "predicament": "Having run through almost everything, you see an early sign of good times and are tempted to sell your last safeguard.", "moral": null},
|
||||
{"chunk": 248, "story": 248, "summary": "A captured trumpeter pleads he carried no weapon, and his captors say his trumpet roused all the others.", "predicament": "You are caught on the losing side and plead that you never did harm yourself, only urged others on.", "moral": null},
|
||||
{"chunk": 249, "story": 249, "summary": "The birds scorn the owl's warnings about acorns, flax and archers until they come true.", "predicament": "You warned your group early about dangers others could not yet see, and they called you mad.", "moral": null},
|
||||
{"chunk": 250, "story": 250, "summary": "Driven out by the ills, the goods ask Jupiter for protection, and he sends them to men one at a time.", "predicament": "Troubles keep arriving together while good things come one at a time, and you must learn to spot the good when it comes.", "moral": null},
|
||||
{"chunk": 251, "story": 251, "summary": "An ass in a lion's skin frightens the foolish beasts until a fox hears him bray.", "predicament": "You have borrowed the trappings of real authority and are enjoying frightening people, and now you meet someone who listens.", "moral": null},
|
||||
{"chunk": 252, "story": 252, "summary": "A sparrow mocks a hare seized by an eagle and is himself taken by a hawk.", "predicament": "A colleague has just been brought down, and it is tempting to mock them for failing, as if it could not happen to you.", "moral": null},
|
||||
{"chunk": 253, "story": 253, "summary": "A flea asks why the ox slaves for men, and the ox says he is loved and patted, while a pat means the flea's death.", "predicament": "A freeloader asks why you work so hard for your employer when they themselves take freely and give nothing.", "moral": null},
|
||||
{"chunk": 254, "story": 254, "summary": "A buyer returns an ass on trial because it at once joined the laziest ass in the yard.", "predicament": "You are new and on trial, and the first thing you do is choose whom to fall in with.", "moral": "A man is known by the company he keeps."},
|
||||
{"chunk": 255, "story": 255, "summary": "A caged dove boasts of her many young, and a crow says that only means more of them in prison.", "predicament": "You boast of how many people you have brought into the organisation, when all of them are stuck there with you.", "moral": null},
|
||||
{"chunk": 256, "story": 256, "summary": "A satyr breaks his friendship with a man who blows on his hands to warm them and on his food to cool it.", "predicament": "Your new ally has watched you argue both sides of the same question within a day, and is doubting you.", "moral": null},
|
||||
{"chunk": 257, "story": 257, "summary": "Momus, made judge of the gods' works, envies and faults all three, and is expelled.", "predicament": "You have been asked to judge between colleagues' work, and your envy is tempting you to find fault with all of it.", "moral": null},
|
||||
{"chunk": 258, "story": 258, "summary": "A jackdaw envious of an eagle tries to carry off a ram, gets caught in the fleece, and is clipped and given to children.", "predicament": "You watched a star performer pull off a feat and are about to try an even bigger one yourself, without their strength.", "moral": null},
|
||||
{"chunk": 259, "story": 259, "summary": "An eagle steals her neighbour fox's cub, and later her own young burn in a nest fired by a stolen cinder.", "predicament": "A powerful neighbour who swore friendship has taken something precious from you, and you cannot reach them to answer it.", "moral": null},
|
||||
{"chunk": 260, "story": 260, "summary": "Every man carries a bag of his neighbours' faults in front and a bigger bag of his own behind.", "predicament": "You see a colleague's faults very clearly and are ready to point them out, without looking at your own.", "moral": "Hence it is that men are quick to see the faults of others, and yet are often blind to their own failings."},
|
||||
{"chunk": 261, "story": 261, "summary": "A bitch granted a place to whelp later uses her grown pups to bar the shepherd from it.", "predicament": "Someone you let use your space for a while has built up a following and now claims it as their own.", "moral": null},
|
||||
{"chunk": 262, "story": 262, "summary": "A stag admires his antlers and despises his thin legs, which save him until the antlers catch in a thicket.", "predicament": "You prize your showy strengths and are ashamed of your plain ones, and trouble is coming that will test which matters.", "moral": "What is most truly valuable is often underrated."},
|
||||
{"chunk": 263, "story": 263, "summary": "A lark born before the earth, with nowhere to bury her father, buries him in her own head.", "predicament": "You owe a duty of respect to someone who has gone, and there is no proper place to pay it but within yourself.", "moral": "Youth’s first duty is reverence to parents."},
|
||||
{"chunk": 264, "story": 264, "summary": "A gnat asks a bull if he should leave, and the bull says he never noticed him come.", "predicament": "You are making a show of whether to leave, sure your departure will be felt, and you may not have been noticed at all.", "moral": "Some men are of more consequence in their own eyes than in the eyes of their neighbors."},
|
||||
{"chunk": 265, "story": 265, "summary": "A camel envious of the monkey's applauded dance tries to dance and is driven out.", "predicament": "A colleague's performance has just been loudly applauded, and you are tempted to get up and try to outdo them.", "moral": "It is absurd to ape our betters."},
|
||||
{"chunk": 266, "story": 266, "summary": "Hungry dogs try to drink a river dry to reach hides in it and burst.", "predicament": "Your group has agreed on a plan to reach something it wants that would require doing the impossible.", "moral": "Attempt not impossibilities."},
|
||||
{"chunk": 267, "story": 267, "summary": "A hungry jackdaw waits on a fig tree for out-of-season figs to ripen.", "predicament": "You are waiting, hungry, for a promise that is out of season to come good, and someone tells you it never will.", "moral": null},
|
||||
{"chunk": 268, "story": 268, "summary": "An honest woodman is given gold and silver axes, and a neighbour who lies to get the same loses his own axe.", "predicament": "A colleague was rewarded for honesty in a lucky accident, and you could stage the same accident and claim the reward.", "moral": null},
|
||||
{"chunk": 269, "story": 269, "summary": "A peasant ignores the pleas of birds to spare his barren tree, but spares it on finding honey inside.", "predicament": "You are about to cut something that has not paid its way, and those who depend on it beg you to spare it.", "moral": "Self-interest alone moves some men."},
|
||||
{"chunk": 270, "story": 270, "summary": "A soldier who fled a robber returns boasting after his comrade has killed him, and is rebuked.", "predicament": "You ran when your partner was in danger, and now that it is over you are tempted to boast of your courage.", "moral": null},
|
||||
{"chunk": 271, "story": 271, "summary": "A shepherd shakes down acorns onto his cloak, and the sheep eating them tear it.", "predicament": "The people you work to provide for have carelessly damaged something of yours while taking what you gave them.", "moral": null},
|
||||
{"chunk": 272, "story": 272, "summary": "The gods choose fruitless trees so as not to seem covetous, and Minerva prefers the olive for its fruit.", "predicament": "Your peers choose honours that look disinterested, and you would rather be known for work that is plainly useful.", "moral": null}
|
||||
]
|
||||
@@ -0,0 +1,42 @@
|
||||
[
|
||||
{"chunk": 273, "story": 273, "summary": "A wrestler bitten by a flea calls on Hercules, and wonders what help to expect against greater foes if none comes for a flea.", "predicament": "You keep calling on your powerful backer over every small irritation, and wonder whether they will come when it truly matters.", "moral": null},
|
||||
{"chunk": 274, "story": 274, "summary": "A fox who finds prey for a lion grows jealous of the lion's share, hunts alone, and is caught.", "predicament": "You do the scouting while a stronger partner takes the biggest share, and you are tempted to go it alone.", "moral": null},
|
||||
{"chunk": 275, "story": 275, "summary": "A traveller meets Truth alone in the desert, who says she left the city because falsehood is now with everyone.", "predicament": "Everyone around you now lies as a matter of course, and speaking plainly has left you entirely on your own.", "moral": null},
|
||||
{"chunk": 276, "story": 276, "summary": "A murderer fleeing his victim's kin climbs from a lion into a serpent's tree and jumps into a crocodile's river.", "predicament": "Pursued for a real wrong you did, you find every place you run to is more dangerous than the last.", "moral": null},
|
||||
{"chunk": 277, "story": 277, "summary": "An eagle proposes an alliance, and the lion asks for a surety since the eagle could fly off whenever he likes.", "predicament": "Someone proposes a partnership who could walk away from it at any moment, while you could not.", "moral": "Try before you trust."},
|
||||
{"chunk": 278, "story": 278, "summary": "An ass bolts for a precipice, and his owner, unable to hold him by the tail, lets go.", "predicament": "Someone you are responsible for is determined to throw themselves at a ruinous course, and holding them back is hurting you both.", "moral": null},
|
||||
{"chunk": 279, "story": 279, "summary": "A thrush lingers on a myrtle for its berries and is caught by a fowler.", "predicament": "You have been lingering in one pleasant spot because it is so rewarding, and someone has noticed exactly where to find you.", "moral": null},
|
||||
{"chunk": 280, "story": 280, "summary": "A wolf waits all day at a cottage door after hearing a mother threaten to throw her child out to him.", "predicament": "Someone made an angry threat in your hearing that seemed to promise you a windfall, and you are waiting for them to follow through.", "moral": null},
|
||||
{"chunk": 281, "story": 281, "summary": "A hen hatches viper eggs, and a swallow warns they will harm everyone, starting with her.", "predicament": "You are carefully nurturing a group of newcomers who, once grown, are likely to turn on everyone, starting with you.", "moral": null},
|
||||
{"chunk": 282, "story": 282, "summary": "An amaranth envies the rose, who replies that her beauty is brief while the amaranth never fades.", "predicament": "You envy a colleague's dazzling reputation, and they tell you it will not last while your quieter one will.", "moral": null},
|
||||
{"chunk": 283, "story": 283, "summary": "Travellers resting in a plane tree's shade call it useless, and the tree rebukes them.", "predicament": "People who depend on you every day are, in your hearing, calling you useless because you do not produce anything showy.", "moral": "Some men underrate their best blessings."},
|
||||
{"chunk": 284, "story": 284, "summary": "A horse refuses the ass a little feed now but promises a sackful later, and the ass does not believe it.", "predicament": "Someone refuses you a small favour now but promises a much larger one later, and you are asked to be grateful.", "moral": null},
|
||||
{"chunk": 285, "story": 285, "summary": "A crow rides a sheep's back and says she bullies the weak and flatters the strong.", "predicament": "A colleague bullies you freely, and openly admits they would never try it with someone who could bite back.", "moral": null},
|
||||
{"chunk": 286, "story": 286, "summary": "A slipping fox grabs a bramble for help, is torn by it, and is told he should have known its nature.", "predicament": "In a crisis you grabbed for help from someone known to take advantage of everyone, and they have hurt you.", "moral": null},
|
||||
{"chunk": 287, "story": 287, "summary": "An ass envies the pampered warhorse until the horse is killed in battle.", "predicament": "You envy how well a favoured colleague is kept, not asking what they are being kept for.", "moral": null},
|
||||
{"chunk": 288, "story": 288, "summary": "A lion ashamed of fearing a cock finds an elephant terrified of a gnat, and is consoled.", "predicament": "You are strong in every way but one small fear, and it shames you so much that you are ready to give up.", "moral": null},
|
||||
{"chunk": 289, "story": 289, "summary": "A dog used to eggs swallows an oyster whole and suffers for thinking everything round is an egg.", "predicament": "Something new looks just like what you are used to handling, and you are about to take it on without a second look.", "moral": "They who act without sufficient thought, will often fall into unsuspected danger."},
|
||||
{"chunk": 290, "story": 290, "summary": "Robbers wound the proud mule carrying treasure and ignore the one carrying grain.", "predicament": "You are proud to carry the most valuable load and make sure everyone hears it, while a colleague carries theirs quietly.", "moral": null},
|
||||
{"chunk": 291, "story": 291, "summary": "A lamb fleeing a wolf into a temple says being sacrificed there is better than being eaten by him.", "predicament": "Someone chasing you warns that the refuge you are running to will be no kinder to you than they would be.", "moral": null},
|
||||
{"chunk": 292, "story": 292, "summary": "A partridge offers to lure other partridges if spared, and the fowler kills him for it.", "predicament": "You have been caught, and you could save yourself by offering to deliver your colleagues to the one who caught you.", "moral": null},
|
||||
{"chunk": 293, "story": 293, "summary": "A man catches a flea who pleads it does little harm, and kills it because no evil should be tolerated.", "predicament": "You have caught someone in a petty offence, and they plead that what they did was too small to matter.", "moral": null},
|
||||
{"chunk": 294, "story": 294, "summary": "A rich man presses his tanner neighbour to move, the tanner stalls, and the rich man grows used to the smell.", "predicament": "A powerful neighbour wants you gone and keeps pressing, and you could keep promising to leave soon without actually going.", "moral": null},
|
||||
{"chunk": 295, "story": 295, "summary": "A viper asks a file for a meal, and the file says he takes from everyone and gives nothing.", "predicament": "You have gone to ask for help from someone well known for taking from everyone and never giving.", "moral": "The covetous are poor givers."},
|
||||
{"chunk": 296, "story": 296, "summary": "A shepherd pulls a thorn from a lion's paw, and the lion later spares him in the arena.", "predicament": "Someone dangerous and in pain comes to you for help, and helping them means getting close to their claws.", "moral": null},
|
||||
{"chunk": 297, "story": 297, "summary": "A camel envying the bull's horns asks Jupiter for some and loses part of his ears.", "predicament": "Not content with your strengths, you are asking the boss for a colleague's distinctions too.", "moral": null},
|
||||
{"chunk": 298, "story": 298, "summary": "A panther in a pit, stoned by some shepherds and fed by others, escapes and takes revenge only on his attackers.", "predicament": "Someone dangerous has fallen, and others are pelting them while a few offer help, and you must choose which you will be.", "moral": null},
|
||||
{"chunk": 299, "story": 299, "summary": "A kite boasts he can catch ostriches to win an eagle's hand, and brings her a stale mouse.", "predicament": "Someone courting you for a partnership boasts of what they can deliver, and you have no way yet to check.", "moral": null},
|
||||
{"chunk": 300, "story": 300, "summary": "An eagle freed by a new owner brings him a hare, and a fox advises courting the old owner who clipped him.", "predicament": "A new employer has restored what your old one took from you, and you must decide whom to cultivate.", "moral": null},
|
||||
{"chunk": 301, "story": 301, "summary": "A prince confined because of his father's dream of a lion strikes at a painted lion, is pricked by a thorn and dies.", "predicament": "You have been confined to protect you from a danger someone only dreamed of, and you are raging against it.", "moral": "We had better bear our troubles bravely than try to escape them."},
|
||||
{"chunk": 302, "story": 302, "summary": "A cat turned into a woman for love leaps from the bridal couch after a mouse.", "predicament": "You have been given a new, polished role, and an old temptation is about to be dropped in front of you.", "moral": "Nature exceeds nurture."},
|
||||
{"chunk": 303, "story": 303, "summary": "A beetle whose young an eagle ate pursues her eggs even into Jupiter's lap until they are broken.", "predicament": "Someone far more powerful destroyed what you cared about, and you could pursue them relentlessly even into their protector's presence.", "moral": "The weak often revenge themselves on those who use them ill, even though they be more powerful."},
|
||||
{"chunk": 304, "story": 304, "summary": "The he-goats complain the she-goats got beards, and Jupiter says an empty badge makes them no equals.", "predicament": "Juniors have been given the same badge of rank as you, and you are tempted to complain to those above.", "moral": "It matters little if those who are inferior to us in merit should be like us in outside appearances."},
|
||||
{"chunk": 305, "story": 305, "summary": "A bald man slaps his own head at a fly, and says he forgives himself but would kill the fly at any cost.", "predicament": "Someone small keeps needling you, and your efforts to hit back are hurting you more than them.", "moral": null},
|
||||
{"chunk": 306, "story": 306, "summary": "A shipwrecked man blames the sea, who says the winds are to blame for her fury.", "predicament": "You were ruined in a venture and blame the institution, which says it was only stirred up by others.", "moral": null},
|
||||
{"chunk": 307, "story": 307, "summary": "A crowd prefers a buffoon's fake pig squeal to a countryman's real pig, until he shows it.", "predicament": "The crowd has already decided their favourite is better than you, however genuine your work, and you must show them.", "moral": null},
|
||||
{"chunk": 308, "story": 308, "summary": "A hungry crow seizes a sleeping serpent as a windfall and is bitten to death.", "predicament": "You are desperate, and an easy prize seems to have been left lying unguarded right in front of you.", "moral": null},
|
||||
{"chunk": 309, "story": 309, "summary": "A horseman takes a hunter's hare under pretence of buying it and gallops off, and the hunter calls it a gift.", "predicament": "Someone has made off with what you earned, pretending to buy it, and you cannot catch them.", "moral": null},
|
||||
{"chunk": 310, "story": 310, "summary": "An evergreen olive mocks the fig for shedding leaves, and snow breaks the olive but passes through the fig.", "predicament": "A colleague mocks you for scaling back in lean seasons while they keep up appearances all year round.", "moral": null},
|
||||
{"chunk": 311, "story": 311, "summary": "The frogs protest the sun's marriage, fearing that more suns would parch them worse.", "predicament": "Someone who already makes your life hard is about to gain more power, and you could protest before it happens.", "moral": null},
|
||||
{"chunk": 312, "story": 312, "summary": "A brazier scolds his dog for sleeping while he works and waking only to beg at dinner.", "predicament": "Someone who dozes through all the work always wakes up just in time to ask for a share of the rewards.", "moral": null}
|
||||
]
|
||||
@@ -0,0 +1,120 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Assemble records.json, groups.json and options_by_entry.json from batches/, groups_src.py and
|
||||
options_src.py, and check them. Jacobs' build.py plus the checks this corpus needs: one scene per
|
||||
fable, predicament length and name leaks, verbatim morals and evidence, the 13-fable recurrence rule,
|
||||
and the catalogue ids the options measurement uses. No inference."""
|
||||
import collections, glob, json, pathlib, re, sys
|
||||
sys.dont_write_bytecode = True # the catalogue import below must not leave caches outside probe/aesop/
|
||||
from groups_src import G, STANDING
|
||||
from options_src import O, NEW_ENTRIES
|
||||
here = pathlib.Path(__file__).parent
|
||||
sys.path.insert(0, str(here.parent.parent / 'catalogue' / 'v2'))
|
||||
from catalogue_v2_src import CATALOGUE
|
||||
chunks = json.loads((here.parent / 'chunks.json').read_text())
|
||||
stories = json.loads((here.parent / 'stories.json').read_text())
|
||||
recs = [r for f in sorted(glob.glob(str(here / 'batches/s*.json'))) for r in json.loads(open(f).read())]
|
||||
assert [r['chunk'] for r in recs] == list(range(len(chunks))), 'every fable, once, in order'
|
||||
assert all(chunks[r['chunk']]['story'] == r['story'] for r in recs)
|
||||
assert all(set(r) == {'chunk', 'story', 'summary', 'predicament', 'moral'} for r in recs)
|
||||
|
||||
# ---- records -------------------------------------------------------------------------------------
|
||||
NAMES = ('amaranth ant ape apple ass bat bear bee beetle bird boar bramble bull calf camel cat cock crab crane '
|
||||
'crow dog doe dolphin dove eagle elephant fawn fig filbert fir fish flea fly flies frog gnat goat goose '
|
||||
'geese grape grasshopper hare hart hawk hedgehog heifer hen horse hound jackdaw kid kite lamb lark '
|
||||
'leopard lion lioness locust mole monkey mouse mice mule nettle nightingale oak olive ox oxen oyster '
|
||||
'panther partridge peacock pig pigeon pomegranate porker raven reed rose satyr seagull serpent sheep '
|
||||
'snake sow sparrow sprat stag stork swallow swan thrush tortoise vine viper walnut wasp weasel whale '
|
||||
'whelp wolf wolves jupiter juno venus mercury minerva neptune momus hercules apollo pallas hermes '
|
||||
'axe net sling fleece wool manger pitcher honey acorn').split()
|
||||
NOPLURAL = {'doe'} # 'does' is a verb
|
||||
leak = re.compile(r'\b(' + '|'.join(n + ('' if n in NOPLURAL else 's?') for n in NAMES) + r')\b', re.I)
|
||||
def norm(s): return ' '.join(s.split())
|
||||
problems = []
|
||||
for r in recs:
|
||||
p, n = r['predicament'], len(r['predicament'].split())
|
||||
if not 15 <= n <= 24: problems.append(f"chunk {r['chunk']}: predicament has {n} words")
|
||||
if len(re.findall(r'[.!?](?:\s|$)', p)) != 1 or not p.endswith('.'): problems.append(f"chunk {r['chunk']}: not one sentence")
|
||||
if leak.search(p): problems.append(f"chunk {r['chunk']}: name or story object in predicament: {leak.search(p).group(0)}")
|
||||
if r['moral'] is not None and norm(r['moral']) not in norm(chunks[r['chunk']]['text']):
|
||||
problems.append(f"chunk {r['chunk']}: moral is not verbatim")
|
||||
|
||||
# ---- groups --------------------------------------------------------------------------------------
|
||||
MIN_MEMBERS = max(3, round(0.04 * len(stories))) # 13 for 313 fables
|
||||
SKILLS = {'wit', 'prudence'}
|
||||
seen = collections.Counter(m for g in G for m in g['members'])
|
||||
dup = [m for m, k in seen.items() if k > 1]
|
||||
if dup: problems.append(f'fables in two groups: {dup}')
|
||||
assert set(STANDING) == set(range(len(recs))), 'STANDING covers every fable'
|
||||
by = {r['chunk']: r for r in recs}
|
||||
out = []
|
||||
for g in G:
|
||||
small = g.get('small', False)
|
||||
k = len(g['members'])
|
||||
if small and not 5 <= k <= 12: problems.append(f"{g['id']}: marked small but has {k} fables")
|
||||
if not small and k < MIN_MEMBERS: problems.append(f"{g['id']}: {k} fables, below the {MIN_MEMBERS}-fable rule")
|
||||
if not 3 <= len(g['options']) <= 5: problems.append(f"{g['id']}: {len(g['options'])} options")
|
||||
used = {p for _, _, mv in g['options'] for p in mv if '.' not in p and p not in ('money', 'standing')}
|
||||
if not used <= SKILLS: problems.append(f"{g['id']}: skill labels outside {SKILLS}: {used - SKILLS}")
|
||||
for _, s, mv in g['options']:
|
||||
if not all(v in ('+', '-', 'risk', 'set') for v in mv.values()): problems.append(f"{g['id']}: bad direction in {mv}")
|
||||
if s.startswith('scene:') and not 0 <= int(s.split(':')[1]) < len(recs): problems.append(f"{g['id']}: bad source {s}")
|
||||
st = sorted({by[m]['story'] for m in g['members']})
|
||||
stand = collections.Counter(STANDING[by[m]['story']] for m in g['members'])
|
||||
out.append({
|
||||
'id': g['id'], 'name': g['name'], 'predicament': g['predicament'], 'small': small,
|
||||
'sentence': f"A {g['actor']} wants {g['wants']} from {g['counterpart']}.",
|
||||
'actor': g['actor'], 'wants': g['wants'], 'counterpart': g['counterpart'],
|
||||
'stories': st, 'story_titles': [stories[s]['title'] for s in st],
|
||||
'standing': dict(stand), 'stage': stand.most_common(1)[0][0],
|
||||
'members': [{'chunk': m, 'story': by[m]['story'], 'predicament': by[m]['predicament'],
|
||||
'moral': by[m]['moral']} for m in g['members']],
|
||||
'options': [{'text': t, 'source': s, 'moves': mv,
|
||||
'in_group': (int(s.split(':')[1]) in g['members']) if s.startswith('scene:') else None}
|
||||
for t, s, mv in g['options']],
|
||||
})
|
||||
unassigned = [r['chunk'] for r in recs if r['chunk'] not in seen]
|
||||
|
||||
# ---- options measurement -------------------------------------------------------------------------
|
||||
v2 = {e['id'] for e in CATALOGUE}
|
||||
obe, new_used = collections.defaultdict(list), set()
|
||||
for entry, c, text, mv, ev, stated in O:
|
||||
if entry.startswith('new:'):
|
||||
if entry[4:] not in NEW_ENTRIES: problems.append(f'{entry}: not defined in NEW_ENTRIES')
|
||||
if entry[4:] in v2: problems.append(f'{entry}: already a v2 id')
|
||||
new_used.add(entry[4:])
|
||||
elif entry not in v2: problems.append(f'{entry}: not a v2 catalogue id')
|
||||
ev = by[c]['moral'] if ev == 'M' else ev
|
||||
if ev is None: problems.append(f'chunk {c}: evidence M but the fable has no moral')
|
||||
elif norm(ev) not in norm(chunks[c]['text']): problems.append(f'chunk {c}: evidence not verbatim: {ev[:50]}')
|
||||
elif len(ev.split()) > 30: problems.append(f'chunk {c}: evidence over 30 words')
|
||||
bad = [p for p in mv if not (p in ('money', 'standing') or p.startswith('relationships.'))]
|
||||
if bad: problems.append(f'chunk {c}: measurement moves use {bad}; money, standing, relationships only')
|
||||
if not all(v in ('+', '-', 'risk') for v in mv.values()): problems.append(f'chunk {c}: bad direction in {mv}')
|
||||
obe[entry].append({'text': text, 'moves': mv, 'source': f'chunk:{c}', 'evidence': ev, 'stated': stated})
|
||||
unused = sorted(set(NEW_ENTRIES) - new_used)
|
||||
if unused: problems.append(f'NEW_ENTRIES never used: {unused}')
|
||||
if problems:
|
||||
print('\n'.join(problems)); sys.exit(1)
|
||||
|
||||
obe_out = {k: obe[k] for k in sorted(obe, key=lambda k: (k.startswith('new:'), k))}
|
||||
obe_out['_new_entries'] = {f'new:{k}': {'name': n, 'definition': d, 'differs_from': x}
|
||||
for k, (n, d, x) in NEW_ENTRIES.items()}
|
||||
(here / 'records.json').write_text(json.dumps(recs, indent=1, ensure_ascii=False))
|
||||
(here / 'groups.json').write_text(json.dumps({'groups': out, 'unassigned': unassigned}, indent=1, ensure_ascii=False))
|
||||
(here / 'options_by_entry.json').write_text(json.dumps(obe_out, indent=1, ensure_ascii=False))
|
||||
|
||||
# ---- report --------------------------------------------------------------------------------------
|
||||
big = [g for g in out if not g['small']]
|
||||
print(f'{len(recs)} fables, {sum(r["moral"] is not None for r in recs)} with a stated moral; '
|
||||
f'{len(big)} groups of {MIN_MEMBERS}+ fables, {len(out) - len(big)} small groups (5-12); '
|
||||
f'{sum(seen.values())} assigned, {len(unassigned)} unassigned')
|
||||
for g in out:
|
||||
print(f"{g['id']} {len(g['members']):2} fables stage {g['stage']:6} {'SMALL ' if g['small'] else ''}{g['name']}")
|
||||
src = collections.Counter(o['source'].split(':')[0] for g in out for o in g['options'])
|
||||
print('group option sources:', dict(src), '| scene options citing a fable outside their group:',
|
||||
sum(o['in_group'] is False for g in out for o in g['options']))
|
||||
opts = [o for k, v in obe.items() for o in v]
|
||||
cov_v2 = sorted(k for k in obe if not k.startswith('new:'))
|
||||
print(f'options measurement: {len(opts)} options, {sum(o["stated"] for o in opts)} stated '
|
||||
f'({sum(o["stated"] for o in opts) / len(opts):.0%}); {len(cov_v2)} of {len(v2)} v2 entries covered, '
|
||||
f'{len(new_used)} new entries; from {len({o["source"] for o in opts})} distinct fables')
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,228 @@
|
||||
"""Hand-built reference grouping of the Aesop predicaments (Claude-written, no inference of any kind).
|
||||
|
||||
One fable is one story and one scene, so a group's member count is also its story count.
|
||||
Recurrence rule, scaled to the corpus: with 313 fables a group needs at least 13 members
|
||||
(max(3, 4% of 313) = 13). Groups of 5-12 are allowed but are marked SMALL below and reported
|
||||
separately. Each fable is in at most one group; fables that fit no recurring situation stay
|
||||
unassigned.
|
||||
Options follow DESIGN.md: 3-5 per group, each marked by where it came from --
|
||||
'archetype' a fixed, setting-free option
|
||||
'scene:N' what someone in fable N actually did (or refused to do)
|
||||
'filled' written to fill a gap the fables leave
|
||||
`moves` names spine paths and a direction only (+ / - / risk / set). No magnitudes: the model never
|
||||
chooses a number. Skill labels proposed for this corpus: wit (seeing through a trick, and turning it),
|
||||
prudence (looking before you leap, knowing your limits, keeping what you have).
|
||||
"""
|
||||
G = [
|
||||
# ---- the powerful and the weak ---------------------------------------------------------------------
|
||||
dict(id='G01', name='A friendly approach from someone who would gain by your fall',
|
||||
predicament='Someone whose nature is to prey on people like you comes friendly, praising, inviting or offering peace, and what they propose would put you in reach.',
|
||||
actor='person with something to lose', wants='to keep it', counterpart='a known predator acting friendly',
|
||||
members=[30, 36, 63, 64, 73, 92, 96, 144, 172, 192, 204, 207, 215, 219, 221, 225],
|
||||
options=[
|
||||
('Keep your distance and decline politely.', 'scene:36', {'prudence':'+', 'relationships.predator':'-'}),
|
||||
('Accept the invitation and go in.', 'scene:221', {'relationships.predator':'+', 'standing':'risk'}),
|
||||
('Say out loud what they are really after.', 'scene:225', {'wit':'+', 'relationships.predator':'-'}),
|
||||
('Send them round to someone who can deal with them.', 'scene:215', {'wit':'+', 'relationships.predator':'-', 'flags.turned_the_tables':'set'}),
|
||||
('Rise to the praise and show them what you can do.', 'scene:96', {'money':'-', 'standing':'-'})]),
|
||||
dict(id='G02', name='At the mercy of someone who has already decided',
|
||||
predicament='Someone who holds your fate has caught you and is looking for a reason, and you have one chance to talk your way out.',
|
||||
actor='person caught', wants='to be let go', counterpart='the one who has them',
|
||||
members=[1, 5, 26, 39, 43, 55, 131, 135, 147, 197, 211, 217, 248, 292],
|
||||
options=[
|
||||
('Answer every charge with the facts.', 'scene:1', {'standing':'risk', 'relationships.captor':'-'}),
|
||||
('Show them the one thing you do that nobody else can.', 'scene:135', {'standing':'+', 'relationships.captor':'+'}),
|
||||
('Tell them you belong to the side they spare.', 'scene:5', {'wit':'+', 'flags.two_faced':'set'}),
|
||||
('Ask for one small favour that puts them off guard.', 'scene:217', {'wit':'+', 'relationships.captor':'-'}),
|
||||
('Offer to hand over your own people instead.', 'scene:292', {'relationships.colleagues':'-', 'standing':'-', 'flags.informer':'set'})]),
|
||||
dict(id='G03', name='Trading one hardship for another',
|
||||
predicament='Your present lot is hard, and you could change master, protector or post, though the new one may be worse.',
|
||||
actor='person with a hard lot', wants='something better', counterpart='the master or post on offer',
|
||||
members=[47, 53, 76, 79, 109, 115, 125, 136, 177, 178, 189, 199, 228, 291],
|
||||
options=[
|
||||
('Ask for a new master.', 'scene:125', {'relationships.boss':'-', 'standing':'risk'}),
|
||||
('Bring in a strong protector.', 'scene:79', {'relationships.protector':'+', 'standing':'risk'}),
|
||||
('Keep the harm you know.', 'scene:53', {'prudence':'+'}),
|
||||
('Go back to your plain, safe post.', 'scene:228', {'prudence':'+', 'money':'-'}),
|
||||
('Sell up and stake it all on the change.', 'scene:109', {'money':'risk', 'flags.staked_all':'set'})]),
|
||||
dict(id='G04', name='Envying another\'s gift',
|
||||
predicament='You envy a colleague\'s gift or standing so much that you are tempted to copy them, or ask for what they have.',
|
||||
actor='person with plainer gifts', wants='what the admired one has', counterpart='the admired colleague',
|
||||
members=[2, 29, 31, 52, 68, 98, 134, 170, 180, 186, 209, 258, 265, 268, 282, 287, 297],
|
||||
options=[
|
||||
('Copy what they do.', 'scene:265', {'standing':'risk', 'relationships.admired':'-'}),
|
||||
('Ask those above for what they have.', 'scene:297', {'relationships.boss':'-', 'standing':'-'}),
|
||||
('Stick to what you are good at.', 'scene:209', {'prudence':'+'}),
|
||||
('Look at what their position costs them.', 'scene:287', {'prudence':'+', 'relationships.admired':'+'}),
|
||||
('Learn the craft properly before you try it.', 'filled', {'money':'-', 'wit':'+'})]),
|
||||
dict(id='G05', name='Passing for more than you are',
|
||||
predicament='You are passing for braver, grander or more skilled than you are, and the moment that would test it has come.',
|
||||
actor='pretender', wants='to keep the credit', counterpart='whoever might test them',
|
||||
members=[40, 42, 65, 138, 148, 160, 187, 198, 200, 201, 234, 251, 270, 302],
|
||||
options=[
|
||||
('Keep up the pretence and say nothing.', 'scene:200', {'standing':'risk'}),
|
||||
('Confess before you are tested.', 'scene:234', {'standing':'-', 'relationships.examiner':'+'}),
|
||||
('Laugh with them when it slips.', 'scene:160', {'standing':'+', 'relationships.companions':'+'}),
|
||||
('Double the claim.', 'scene:198', {'standing':'risk', 'flags.liar':'set'}),
|
||||
('Back out quietly.', 'scene:138', {'standing':'-'})]),
|
||||
dict(id='G06', name='Riding high',
|
||||
predicament='Things are going your way, and you are tempted to show it, crow about it, or take on someone bigger.',
|
||||
actor='person on top for now', wants='to be seen on top', counterpart='rivals and onlookers',
|
||||
members=[27, 57, 71, 108, 110, 117, 126, 141, 194, 245, 255, 264, 290],
|
||||
options=[
|
||||
('Crow about it where everyone can see.', 'scene:71', {'standing':'risk', 'relationships.rival':'-'}),
|
||||
('Press on and take on someone bigger.', 'scene:110', {'standing':'risk', 'flags.overreached':'set'}),
|
||||
('Keep quiet and go on shining.', 'scene:141', {'prudence':'+', 'standing':'+'}),
|
||||
('Ask an old hand what your mark really means.', 'scene:57', {'relationships.mentor':'+', 'prudence':'+'})]),
|
||||
dict(id='G07', name='Sneered at by someone showier',
|
||||
predicament='A showier or better-placed colleague sneers at your plainness or your load, and you must decide how to answer.',
|
||||
actor='plain worker', wants='respect', counterpart='a showier colleague',
|
||||
members=[7, 11, 22, 24, 70, 88, 155, 163, 167, 223, 226, 253, 310],
|
||||
options=[
|
||||
('Answer with what you can do that they cannot.', 'scene:167', {'wit':'+', 'standing':'+', 'relationships.rival':'-'}),
|
||||
('Hold your peace and wait.', 'scene:223', {'prudence':'+', 'relationships.rival':'-'}),
|
||||
('Challenge them to a test.', 'scene:11', {'standing':'risk', 'relationships.rival':'-'}),
|
||||
('Ignore them and heed only the one in charge.', 'scene:226', {'relationships.boss':'+'}),
|
||||
('Try to outshine them on their terms.', 'filled', {'money':'-', 'standing':'risk'})]),
|
||||
# ---- help, greed, partners -------------------------------------------------------------------------
|
||||
dict(id='G08', name='Help asked in need',
|
||||
predicament='Someone in trouble asks for help, or you need it yourself, and nobody can tell how the help will be repaid.',
|
||||
actor='person asked for help', wants='to do right without being bitten', counterpart='someone in need',
|
||||
members=[0, 10, 23, 51, 132, 154, 190, 193, 208, 230, 261, 286, 295, 296],
|
||||
options=[
|
||||
('Help, though they can give nothing back now.', 'scene:0', {'relationships.helped':'+', 'money':'-'}),
|
||||
('Refuse: they should have looked ahead.', 'scene:10', {'relationships.asker':'-', 'money':'+'}),
|
||||
('Take them in and nurse them.', 'scene:23', {'relationships.helped':'+', 'standing':'risk'}),
|
||||
('Refuse to lift any of their load.', 'scene:51', {'relationships.partner':'-', 'money':'risk'}),
|
||||
('Stick with those who already serve you without promises.', 'scene:230', {'prudence':'+', 'relationships.staff':'+'})]),
|
||||
dict(id='G09', name='Wanting more than you hold',
|
||||
predicament='You already have something good, and a chance to grab more, squeeze more or stay longer is tempting you.',
|
||||
actor='person with something in hand', wants='more', counterpart='the bigger prize',
|
||||
members=[15, 21, 46, 95, 113, 137, 139, 151, 156, 168, 179, 213, 279],
|
||||
options=[
|
||||
('Keep what you hold.', 'scene:137', {'money':'+', 'prudence':'+'}),
|
||||
('Drop it and chase the bigger prize.', 'scene:156', {'money':'risk'}),
|
||||
('Squeeze the steady source for more.', 'scene:168', {'money':'risk', 'flags.killed_the_goose':'set'}),
|
||||
('Take half and get free.', 'scene:46', {'prudence':'+', 'money':'-'}),
|
||||
('Stay and enjoy it a while longer.', 'scene:279', {'money':'+', 'standing':'risk'})]),
|
||||
dict(id='G10', name='Your side divided',
|
||||
predicament='You and a rival, or the people on your own side, are quarrelling, and someone else stands to profit from it.',
|
||||
actor='member of a divided side', wants='to win the quarrel, or end it', counterpart='the rival, and whoever is waiting',
|
||||
members=[4, 25, 48, 75, 80, 105, 124, 152, 165, 166, 171, 185, 224, 236, 246],
|
||||
options=[
|
||||
('Make peace with the rival before others profit.', 'scene:105', {'relationships.rival':'+'}),
|
||||
('Show them together they cannot be broken.', 'scene:4', {'relationships.team':'+', 'standing':'+'}),
|
||||
('Fight it out to the end.', 'scene:152', {'relationships.rival':'-', 'money':'-'}),
|
||||
('Stop supplying the part you resent.', 'scene:75', {'relationships.team':'-', 'money':'-'}),
|
||||
('Keep switching to whichever side is winning.', 'scene:246', {'wit':'+', 'relationships.team':'-', 'flags.turncoat':'set'})]),
|
||||
dict(id='G11', name='A partner you may not be able to count on',
|
||||
predicament='You are joined, or about to be joined, to a partner or ally, and you cannot be sure they will stand by you.',
|
||||
actor='person choosing a partner', wants='someone to rely on', counterpart='a doubtful partner',
|
||||
members=[12, 20, 37, 58, 60, 82, 90, 102, 120, 127, 181, 182, 184, 254, 256, 277, 284, 299],
|
||||
options=[
|
||||
('Ask for a surety before you join.', 'scene:277', {'prudence':'+', 'relationships.partner':'-'}),
|
||||
('Decline: their ways would undo yours.', 'scene:12', {'prudence':'+', 'relationships.partner':'-'}),
|
||||
('Save yourself and leave the partner to it.', 'scene:37', {'relationships.partner':'-', 'flags.deserted':'set'}),
|
||||
('Bind yourself to them.', 'scene:90', {'relationships.partner':'+', 'standing':'risk'}),
|
||||
('Hold them to their own words.', 'scene:120', {'wit':'+', 'relationships.partner':'-'})]),
|
||||
dict(id='G12', name='Rushing in without looking',
|
||||
predicament='Something you want is right in front of you, or you are intent on a target, and you have not looked at the danger.',
|
||||
actor='eager person', wants='what is in front of them', counterpart='the danger they have not seen',
|
||||
members=[13, 18, 32, 62, 99, 107, 140, 150, 216, 222, 247, 289, 308],
|
||||
options=[
|
||||
('Go for it now before it is gone.', 'scene:32', {'money':'risk', 'standing':'risk'}),
|
||||
('Ask how you get out before going in.', 'scene:140', {'prudence':'+'}),
|
||||
('Keep your eyes on your target.', 'scene:222', {'money':'+', 'standing':'risk'}),
|
||||
('Wait for a surer sign before you act.', 'filled', {'prudence':'+', 'money':'-'})]),
|
||||
dict(id='G13', name='Pointing at others\' faults',
|
||||
predicament='Faults are being pointed out, by you or at you, and the one pointing shares the fault or gains by the blame.',
|
||||
actor='critic or criticised', wants='to be in the right', counterpart='the other party',
|
||||
members=[9, 28, 38, 84, 111, 116, 122, 153, 173, 188, 239, 257, 260, 306],
|
||||
options=[
|
||||
('Ask them to show you how.', 'scene:84', {'wit':'+', 'relationships.critic':'-'}),
|
||||
('Point out that they do the same.', 'scene:122', {'wit':'+', 'relationships.critic':'-', 'standing':'+'}),
|
||||
('Ask what they gain by the advice.', 'scene:38', {'wit':'+', 'relationships.adviser':'-'}),
|
||||
('Find fault with everyone.', 'scene:257', {'standing':'-', 'relationships.colleagues':'-'}),
|
||||
('Look at your own faults first.', 'filled', {'prudence':'+', 'relationships.colleagues':'+'})]),
|
||||
dict(id='G14', name='Liberties between the weak and the strong',
|
||||
predicament='Someone powerful is down, caged or out of reach, or someone small is needling you, and a blow could be struck.',
|
||||
actor='weak or strong party', wants='to strike, or to be left alone', counterpart='the other party',
|
||||
members=[49, 66, 77, 121, 145, 159, 175, 206, 232, 238, 252, 285, 298, 303, 305],
|
||||
options=[
|
||||
('Taunt them while they cannot reach you.', 'scene:66', {'standing':'+', 'relationships.powerful':'-'}),
|
||||
('Pursue them however long it takes.', 'scene:303', {'relationships.powerful':'-', 'flags.revenge':'set', 'standing':'risk'}),
|
||||
('Help them while they are down.', 'scene:298', {'relationships.powerful':'+', 'money':'-'}),
|
||||
('Kick them now that they are down.', 'scene:232', {'relationships.powerful':'-', 'standing':'-'}),
|
||||
('Let a small insult pass.', 'filled', {'prudence':'+'})]),
|
||||
dict(id='G15', name='A hard lot',
|
||||
predicament='You are stuck, worn down or beaten, and it is tempting to despair, complain, or wait for someone to rescue you.',
|
||||
actor='person in hard times', wants='a way through', counterpart='their own circumstances',
|
||||
members=[16, 61, 72, 87, 133, 157, 169, 191, 195, 227, 267, 273, 288, 301],
|
||||
options=[
|
||||
('Put your own shoulder to it.', 'scene:16', {'prudence':'+', 'money':'+'}),
|
||||
('Try something nobody has tried.', 'scene:191', {'wit':'+', 'money':'+'}),
|
||||
('Say you never wanted it anyway.', 'scene:195', {'standing':'+'}),
|
||||
('Call on your backer.', 'scene:273', {'relationships.patron':'risk'}),
|
||||
('Give it up entirely.', 'scene:87', {'standing':'-', 'flags.gave_up':'set'})]),
|
||||
dict(id='G16', name='Worked hard, badly repaid',
|
||||
predicament='You carry the load for the one you serve, and they take you for granted, work you into the ground or skim what you need.',
|
||||
actor='worker', wants='fair treatment', counterpart='the one they serve',
|
||||
members=[34, 45, 50, 74, 100, 118, 119, 142, 161, 196, 271, 283, 312],
|
||||
options=[
|
||||
('Carry on in silence.', 'scene:34', {'relationships.boss':'+', 'standing':'-'}),
|
||||
('Tell them plainly what they are doing to you.', 'scene:50', {'relationships.boss':'risk', 'standing':'+'}),
|
||||
('Remind them what you were.', 'scene:119', {'relationships.boss':'risk'}),
|
||||
('Leave before you are next.', 'scene:118', {'prudence':'+', 'money':'-', 'relationships.boss':'-'}),
|
||||
('Stop being so useful.', 'filled', {'money':'-', 'relationships.boss':'-'})]),
|
||||
# ---- SMALL groups (5-12 fables): below the 13-fable recurrence rule, reported separately ----------
|
||||
dict(id='G17', name='Letting a known predator inside', small=True, # SMALL: 6 fables
|
||||
predicament='Someone with a predator\'s instincts is about to be let inside, or trained, or left in charge, and you know what they are.',
|
||||
actor='keeper', wants='to use them safely', counterpart='a known predator',
|
||||
members=[83, 129, 164, 210, 233, 281],
|
||||
options=[
|
||||
('Speak up before they are let in.', 'scene:164', {'relationships.boss':'risk', 'standing':'+'}),
|
||||
('Trust them after long good behaviour.', 'scene:210', {'relationships.newcomer':'+', 'money':'risk'}),
|
||||
('Let them go and cut your losses.', 'scene:129', {'money':'-', 'prudence':'+'}),
|
||||
('Train them to your uses.', 'scene:83', {'money':'+', 'relationships.newcomer':'risk'})]),
|
||||
dict(id='G18', name='The lion\'s share', small=True, # SMALL: 6 fables
|
||||
predicament='You did the work alongside someone far stronger, and now the proceeds are being divided on their terms.',
|
||||
actor='junior partner', wants='a fair share', counterpart='a far stronger partner',
|
||||
members=[3, 101, 130, 158, 274, 309],
|
||||
options=[
|
||||
('Divide it fairly.', 'scene:158', {'relationships.partner':'-', 'standing':'risk'}),
|
||||
('Leave yourself almost nothing.', 'scene:158', {'money':'-', 'relationships.partner':'+'}),
|
||||
('Go it alone next time.', 'scene:274', {'money':'risk', 'relationships.partner':'-'}),
|
||||
('Ask for what you were promised.', 'scene:3', {'relationships.partner':'-', 'standing':'risk'})]),
|
||||
dict(id='G19', name='A bad record when you need trust', small=True, # SMALL: 5 fables
|
||||
predicament='You need people to believe you or help you now, and your record gives them every reason not to.',
|
||||
actor='person with a past', wants='to be believed', counterpart='those who remember',
|
||||
members=[54, 104, 229, 235, 243],
|
||||
options=[
|
||||
('Raise the alarm anyway.', 'scene:54', {'standing':'-'}),
|
||||
('Make a new promise to a new patron.', 'scene:243', {'relationships.patron':'-'}),
|
||||
('Do a good turn to mend your name.', 'scene:235', {'relationships.neighbour':'risk'}),
|
||||
('Earn trust in good times, before you need it.', 'filled', {'relationships.allies':'+'})]),
|
||||
dict(id='G20', name='A warning before the trouble', small=True, # SMALL: 6 fables
|
||||
predicament='Trouble is coming but not yet here, and you must decide whether to prepare, warn others, or take the threat seriously.',
|
||||
actor='person with warning', wants='to be ready', counterpart='the trouble coming',
|
||||
members=[35, 112, 174, 214, 241, 249],
|
||||
options=[
|
||||
('Prepare now while it is quiet.', 'scene:112', {'prudence':'+', 'money':'-'}),
|
||||
('Warn the others though they laugh.', 'scene:249', {'standing':'-', 'relationships.team':'-'}),
|
||||
('Wait until they mean it.', 'scene:214', {'prudence':'+'}),
|
||||
('Put it off until next time.', 'scene:241', {'money':'+', 'prudence':'-'})]),
|
||||
]
|
||||
|
||||
# Protagonist's power in the situation each predicament describes, for stage assignment (DESIGN.md
|
||||
# "Stages"). One fable is one scene, so this is per fable. 'high' means the "you" of the predicament
|
||||
# holds power over the others in it, 'middle' that they deal as a peer, 'low' that they are at
|
||||
# someone's mercy or under their orders.
|
||||
HIGH = {0, 4, 17, 33, 49, 69, 73, 84, 85, 86, 89, 126, 137, 152, 153, 156, 162, 173, 175, 183, 202,
|
||||
203, 213, 220, 229, 230, 231, 257, 261, 269, 271, 277, 278, 288, 293, 305, 312}
|
||||
MIDDLE = {2, 6, 7, 10, 12, 14, 15, 21, 22, 23, 24, 25, 27, 28, 30, 31, 37, 38, 40, 42, 44, 46, 48, 51,
|
||||
58, 59, 60, 61, 62, 65, 67, 71, 78, 83, 91, 93, 95, 96, 97, 102, 103, 105, 108, 111, 112, 114,
|
||||
116, 120, 123, 124, 129, 132, 138, 139, 140, 141, 143, 148, 149, 150, 151, 154, 155, 159,
|
||||
160, 163, 165, 167, 168, 171, 174, 179, 180, 182, 184, 185, 186, 188, 190, 192, 194, 199,
|
||||
201, 209, 210, 212, 219, 222, 224, 225, 227, 233, 235, 236, 239, 242, 244, 245, 249, 250,
|
||||
251, 252, 256, 260, 262, 263, 270, 272, 281, 282, 289, 290, 296, 297, 298, 299, 302, 304, 310}
|
||||
STANDING = {i: 'high' if i in HIGH else 'middle' if i in MIDDLE else 'low' for i in range(313)}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,342 @@
|
||||
"""The options measurement: which catalogue situations the fables supply options for, and whether the
|
||||
fable itself shows where each option's moves go. Hand-written by Claude reading every fable; no inference.
|
||||
|
||||
Each row: (entry, chunk, text, moves, evidence, stated)
|
||||
entry a catalogue v2 id, or 'new:<id>' defined in NEW_ENTRIES
|
||||
chunk the fable the option comes from (written out as source 'chunk:N')
|
||||
text the move, transplanted to a workplace
|
||||
moves spine paths with a direction. Only money, standing and relationships.<role>: a skill label
|
||||
or a flag is a design decision about the option, not an outcome a story can show, so
|
||||
none is used here (the group options in groups_src.py carry them)
|
||||
evidence a verbatim excerpt of the fable, at most 30 words, or 'M' for the fable's stated moral
|
||||
stated True only if the fable's own outcome or moral shows the direction of EVERY path in moves.
|
||||
|
||||
How an outcome is read as a direction (the same reading for every row):
|
||||
money goods, food, pay, property or a prize gained (+) or lost (-); a heavier load or harder
|
||||
work for the same keep counts as (-)
|
||||
standing the actor's safety, position or name: made king, spared, pardoned, praised, winning
|
||||
the contest (+); killed, caught, beaten, driven out, exposed or publicly rebuked (-)
|
||||
relationships.<role> how that party treats the actor afterwards: repays, rescues, makes peace (+);
|
||||
turns on them, deserts them, refuses them, stops trusting them (-)
|
||||
'risk' stated only when the same fable shows the same move ending both ways
|
||||
A moral that only calls a move wise or foolish does not state a direction; one that names the
|
||||
effect ("wins the race", "lost both") does. An outcome that befalls the actor but is not caused by
|
||||
the move (the sparrow taken by a hawk while mocking the hare) is not counted as stated.
|
||||
"""
|
||||
NEW_ENTRIES = {
|
||||
'friendly_predator': ('A friendly approach from someone who would gain by your fall',
|
||||
'Someone whose nature is to prey on people like you comes friendly, praising, inviting, offering peace or a small favour to ask, and what they propose would put you in their reach.',
|
||||
'near sure_thing (an easy fortune that is a trap) and not_who_they_seem (a false face among you); here the danger is known, and the bait is friendship, not fortune'),
|
||||
'better_the_devil': ('Trading one hardship for another',
|
||||
'Your present master, protector or post is hard on you, and you could change it, though the new one may be worse.',
|
||||
'no v2 entry; the decision is whether to change your lot, not how to bear it'),
|
||||
'ape_your_betters': ('Envying another\'s gift',
|
||||
'You envy a colleague\'s gift, looks or standing so much that you are tempted to copy them, ask for what they have, or leave your own kind to join theirs.',
|
||||
'near overlooked (wanting, once, to be noticed beside the admired one); here the move is imitation'),
|
||||
'riding_high': ('Riding high',
|
||||
'Things are going your way, and you are tempted to show it: crow, parade your honours, or take on someone bigger.',
|
||||
'no v2 entry; the fables\' most common turn, pride before a fall'),
|
||||
'sneered_at': ('Sneered at by someone showier',
|
||||
'A showier or better-placed colleague sneers at your plainness, slowness or load; you are the one sneered at, or the one sneering.',
|
||||
'near power_over_you and despised, but the sneerer has no power over you'),
|
||||
'grasping': ('Wanting more than you hold',
|
||||
'You already have something good, and the chance to grab more, squeeze more out of it, or stay longer is tempting you.',
|
||||
'no v2 entry'),
|
||||
'divided': ('Your side divided',
|
||||
'You and a rival, or the people on your own side, are quarrelling, and someone else stands to profit from it.',
|
||||
'no v2 entry'),
|
||||
'doubtful_ally': ('A partner you may not be able to count on',
|
||||
'You are joined, or about to be joined, to a partner or ally, and cannot be sure they will stand by you.',
|
||||
'near used; here nothing is hidden yet, the question is whether to rely on them'),
|
||||
'heedless': ('Rushing in without looking',
|
||||
'Something you want is right in front of you, or you are intent on a target, and you have not looked at the danger.',
|
||||
'no v2 entry'),
|
||||
'pot_and_kettle': ('Pointing at others\' faults',
|
||||
'Faults are being pointed out, by you or at you, and the one pointing shares the fault or gains by the blame.',
|
||||
'near own_words_back'),
|
||||
'needling_the_strong': ('Liberties between the weak and the strong',
|
||||
'Someone powerful is down, caged or out of reach, or someone small is needling you, and a blow could be struck.',
|
||||
'near revenge and at_their_mercy'),
|
||||
'hard_lot': ('A hard lot',
|
||||
'You are stuck, worn down or beaten, and it is tempting to despair, complain, or wait for someone to rescue you.',
|
||||
'near dead_end, which is years of thankless work; this is any hardship'),
|
||||
'used_up': ('Worked hard, badly repaid',
|
||||
'You carry the load for the one you serve, and they take you for granted, work you into the ground or skim what you need.',
|
||||
'near overlooked and bow_for_your_living'),
|
||||
'predator_inside': ('Letting a known predator inside',
|
||||
'Someone with a predator\'s instincts is about to be let in, trained or left in charge, and you know what they are.',
|
||||
'near warning'),
|
||||
'lions_share': ('The lion\'s share',
|
||||
'You did the work alongside someone far stronger, and the proceeds are being divided on their terms.',
|
||||
'near used and power_over_you'),
|
||||
'bad_record': ('A bad record when you need trust',
|
||||
'You need people to believe or help you now, and your record gives them every reason not to.',
|
||||
'near unbelievable_truth, but here the listeners are right to doubt you'),
|
||||
'asking_above': ('Asking the power above for a favour',
|
||||
'You can ask someone far above you for a favour, a change or a rescue, and what you ask for may not serve you.',
|
||||
'near patron and benefactor; the fables\' petitions to Jupiter'),
|
||||
'please_everyone': ('Trying to please everyone',
|
||||
'Several people want different things of you, and changing to suit each one in turn is tempting.',
|
||||
'near peace_at_home'),
|
||||
'make_them_move': ('Getting someone to move',
|
||||
'You need someone to do or give up something, and must choose between coaxing, tricking and forcing them.',
|
||||
'no v2 entry'),
|
||||
}
|
||||
|
||||
M = 'M'
|
||||
O = [
|
||||
# ---- at the mercy of the powerful ----------------------------------------------------------------
|
||||
('at_their_mercy', 1, 'Answer every charge with the facts.', {'standing':'-'}, M, True),
|
||||
('at_their_mercy', 5, 'Tell each captor you belong to the side they spare.', {'standing':'+'}, 'The Bat assured him that he was not a mouse, but a bat, and thus a second time escaped.', True),
|
||||
('at_their_mercy', 26, 'Plead your good character, though you were caught with the wrongdoers.', {'standing':'-'}, 'I have taken you with these robbers, the Cranes, and you must die in their company.', True),
|
||||
('at_their_mercy', 39, 'Defend yourself against the excuse they have found.', {'standing':'-'}, 'Although you abound in specious apologies, I shall not remain supperless;', True),
|
||||
('at_their_mercy', 55, 'Ask them to stop, since their sport is your ruin.', {'relationships.powerful':'+'}, 'Pray stop, my boys: what is sport to you, is death to us.', False),
|
||||
('at_their_mercy', 131, 'Plead how useful you are when they must cut someone.', {'standing':'risk'}, 'The Birdcatcher spared his life, and determined to pick out a fine young Cock just attaining to his comb.', True),
|
||||
('at_their_mercy', 135, 'Show the one real talent that sets you apart.', {'standing':'+'}, 'made himself known by his voice, and preserved his life by his melody.', True),
|
||||
('at_their_mercy', 147, 'Plead your usefulness to people your usefulness threatens.', {'standing':'-'}, 'That is the very reason why we must the more kill you,', True),
|
||||
('at_their_mercy', 197, 'Ask the one who has you for a small favour that may draw help.', {'standing':'+'}, 'some hounds hearing the sound ran up and began chasing the Wolf.', True),
|
||||
('at_their_mercy', 211, 'Argue that everyone should be equal, with nothing to back it.', {'standing':'-'}, 'Your words, O Hares! are good; but they lack both claws and teeth such as we have.', False),
|
||||
('at_their_mercy', 217, 'Ask for a small service that puts them off guard.', {'standing':'+', 'relationships.captor':'-'}, 'the Ass, with his heels, kicked his teeth into his mouth and galloped away.', True),
|
||||
('at_their_mercy', 248, 'Plead that you never did harm yourself, you only urged others on.', {'standing':'-'}, 'That is the very reason for which you should be put to death,', True),
|
||||
('at_their_mercy', 292, 'Offer to deliver your colleagues in return for your own escape.', {'standing':'-'}, 'I shall now with less scruple take your life, because you are willing to save it at the cost of betraying your friends and relations.', True),
|
||||
('at_their_mercy', 293, 'Plead that your offence was too small to matter.', {'standing':'-'}, 'Now you shall certainly die by mine own hands, for no evil, whether it be small or large, ought to be tolerated.', True),
|
||||
('station', 43, 'Agree to the powerful suitor, on a condition that leaves them harmless.', {'relationships.powerful':'-'}, 'the Woodman, no longer afraid, set upon him with his club, and drove him away into the forest.', True),
|
||||
('power_over_you', 205, 'Give a vain leader your honest opinion.', {'standing':'-'}, 'The King of the Apes, enraged at hearing these truths, gave him over to the teeth and claws of his companions.', True),
|
||||
('power_over_you', 205, 'Flatter a vain leader.', {'money':'+'}, 'The Ape and all his court, gratified with the lie, commanded that a handsome present be given to the flatterer.', True),
|
||||
# ---- a friendly approach from a predator ----------------------------------------------------------
|
||||
('new:friendly_predator', 36, 'Stay outside and ask after them from a safe distance.', {'relationships.predator':'-'}, 'I notice that there are many prints of feet entering your cave, but I see no trace of any returning.', False),
|
||||
('new:friendly_predator', 36, 'Go in when they call you close.', {'standing':'-'}, 'The beasts expressed their sorrow, and came one by one to his den, where the Lion devoured them.', True),
|
||||
('new:friendly_predator', 63, 'Dismiss your protectors to make peace with your enemies.', {'standing':'-'}, 'The Sheep, poor silly creatures, were easily beguiled and dismissed the Dogs, whereupon the Wolves destroyed the unguarded flock at their own pleasure.', True),
|
||||
('new:friendly_predator', 64, 'Tell the helper you will stay well if they go away.', {'relationships.predator':'-'}, 'We are all very well, and shall continue so, if you will only be good enough to go away, and leave us as we are.', False),
|
||||
('new:friendly_predator', 92, 'Refuse the small favour that would bring you in reach.', {'relationships.predator':'-'}, M, False),
|
||||
('new:friendly_predator', 96, 'Speak up to prove the flatterer\'s one doubt wrong.', {'money':'-', 'standing':'-'}, 'My good Crow, your voice is right enough, but your wit is wanting.', True),
|
||||
('new:friendly_predator', 144, 'Stay put, however harmless they now look.', {'relationships.predator':'-'}, 'even though you should turn into a meal-bag, we will not come near you.', False),
|
||||
('new:friendly_predator', 192, 'Act at once on a stranger\'s alarming story.', {'money':'-'}, 'The Thief made off with the coat and did not return again to the inn.', True),
|
||||
('new:friendly_predator', 207, 'Go for the tempting thing lying in the dark corner.', {'standing':'-'}, 'A Mouse, supposing him to be food, leaped upon him, and was instantly caught and squeezed to death.', True),
|
||||
('new:friendly_predator', 215, 'Send the flatterer round to the one who guards you.', {'relationships.predator':'-'}, 'When the Fox approached the tree, the Dog sprang out and caught him, and tore him to pieces.', True),
|
||||
('new:friendly_predator', 219, 'Look at the preparations and leave without a word.', {'relationships.host':'-'}, 'The Lion inquired why he went off so abruptly without a word of salutation to his host', True),
|
||||
('new:friendly_predator', 221, 'Accept the sudden praise and invitation of someone you annoyed.', {'standing':'-'}, 'The Owl came forth from her hollow, seized her, and put her to death.', True),
|
||||
('new:friendly_predator', 225, 'Stay on your secure ledge and name what they are after.', {'relationships.predator':'-'}, 'it is not for the pasture that you invite me, but for yourself, who are in want of food.', False),
|
||||
('in_your_keeping', 204, 'Refuse a stranger\'s sudden favours and keep watch.', {'relationships.stranger':'-'}, 'This sudden kindness at your hands will only make me more watchful', False),
|
||||
('sure_thing', 73, 'Take up the windfall a jealous colleague says they kept for you.', {'standing':'-'}, 'The Monkey approached carelessly and was caught in the trap;', True),
|
||||
('used', 30, 'Let the one in trouble climb out on your back, on a promise to pull you after.', {'relationships.partner':'-', 'standing':'-'}, 'he safely reached the mouth of the well and made off as fast as he could.', True),
|
||||
('used', 309, 'Hand your catch to someone who says they will pay for it.', {'money':'-'}, 'However, when the Horseman got the hare, he rode off as fast as he could.', True),
|
||||
('your_scheme', 185, 'Warn each neighbour privately that the other plots against them.', {'money':'+'}, 'afforded ample provision for the Cat and her kittens.', True),
|
||||
('your_scheme', 56, 'Repeat the shortcut that lightened your load once.', {'money':'-'}, 'And thus his trick recoiled on him, for he now carried on his back a double burden.', True),
|
||||
('your_scheme', 218, 'Out of envy, urge a colleague to fake an illness to escape work.', {'standing':'-'}, 'They at once killed the Goat, and so healed the Ass.', True),
|
||||
('compromise_for_money', 172, 'Hand over what you guard, for a share with the rivals.', {'standing':'-'}, 'entering the den of the Wolves, they were set upon and torn to pieces.', True),
|
||||
('compromise_for_money', 268, 'Tell the truth about what you lost, though a richer answer is offered.', {'money':'+'}, 'Mercury, pleased with his honesty, gave him the golden and silver axes in addition to his own.', True),
|
||||
('compromise_for_money', 268, 'Claim the richer thing is yours.', {'money':'-'}, 'not only took away the golden axe, but refused to recover for him the axe he had thrown into the pool.', True),
|
||||
('pressed_to_wrong', 20, 'Hand your partner over to the powerful in return for your own safety.', {'standing':'-', 'relationships.partner':'-'}, 'The Lion, seeing that the Ass was secured, immediately clutched the Fox, and attacked the Ass at his leisure.', True),
|
||||
('strings', 199, 'Accept a powerful helper\'s harness to get your revenge.', {'standing':'-'}, 'instead of obtaining revenge on the Stag, he had enslaved himself to the service of man.', True),
|
||||
('strings', 115, 'Turn down a comfortable post that comes with a chain.', {'money':'-'}, 'May no friend of mine ever be in such a plight; for the weight of this chain is enough to spoil the appetite.', False),
|
||||
# ---- trading hardships, and asking the power above ------------------------------------------------
|
||||
('new:better_the_devil', 47, 'Keep demanding a stronger leader from above.', {'standing':'-'}, 'sent a Heron, who preyed upon the Frogs day by day till there were none left to croak upon the lake.', True),
|
||||
('new:better_the_devil', 53, 'Keep the harm you know rather than risk a worse replacement.', {'standing':'+'}, M, False),
|
||||
('new:better_the_devil', 76, 'Get rid of what sets the harsh pace.', {'money':'-'}, 'woke them up to their work in the middle of the night.', True),
|
||||
('new:better_the_devil', 79, 'Invite a powerful protector inside.', {'standing':'-'}, 'he made more havoc and slew a larger number of them in one day than the Kite could pounce upon in a whole year.', True),
|
||||
('new:better_the_devil', 109, 'Sell what you have and stake it all on a calm-looking trade.', {'money':'-'}, 'he threw all his merchandise overboard, and barely escaped with his life in the empty ship.', True),
|
||||
('new:better_the_devil', 125, 'Ask for a new master each time you are unhappy.', {'money':'-'}, 'The Ass found that he had fallen into worse hands', True),
|
||||
('new:better_the_devil', 136, 'Flee into the shelter of someone more dangerous.', {'standing':'-'}, 'when she was safe within the cave, sprang upon her and tore her to pieces.', True),
|
||||
('new:better_the_devil', 176, 'Leave the field you are made for to chase better prospects.', {'standing':'-'}, 'A Fox came across him, and being very hungry ate him up.', True),
|
||||
('new:better_the_devil', 177, 'Refuse to fight a takeover, since any master will work you the same.', {'relationships.boss':'-'}, M, False),
|
||||
('new:better_the_devil', 178, 'Keep the sated drainers rather than invite hungrier ones.', {'money':'+'}, 'others more hungry will come in their place, and will drink up all the blood I have left.', False),
|
||||
('new:better_the_devil', 189, 'Stay in your familiar, exposed spot.', {'standing':'-'}, 'A few days afterwards a heavy wagon passed through the gully and crushed him to death under its wheels.', True),
|
||||
('new:better_the_devil', 228, 'Go back to plain fare where you can live without fear.', {'money':'-'}, 'I prefer my bare plowlands and roots from the hedgerow, where I can live in safety, and without fear.', True),
|
||||
('new:better_the_devil', 291, 'Take refuge with those who may also harm you, rather than with the one chasing you.', {'standing':'+'}, 'It would be better for me to be sacrificed in the Temple than to be eaten by you.', False),
|
||||
('new:asking_above', 16, 'Wait for someone powerful to rescue you before you try.', {'relationships.patron':'-'}, 'never more pray to me for help, until you have done your best to help yourself', True),
|
||||
('new:asking_above', 114, 'Ask your patron for the power to punish anyone who touches what is yours.', {'standing':'risk'}, 'if you use your sting, it shall remain in the wound you make, and then you will die from the loss of it.', False),
|
||||
('new:asking_above', 157, 'Smash your ties with the patron who never helped you.', {'money':'+'}, 'When its head was knocked off, out came a stream of gold, which the Carpenter quickly picked up', True),
|
||||
('new:asking_above', 297, 'Ask the boss for a colleague\'s distinctions as well as your own.', {'standing':'-'}, 'not only refused to give him horns, but even deprived him of a portion of his ears.', True),
|
||||
# ---- envy and pretence ----------------------------------------------------------------------------
|
||||
('new:ape_your_betters', 2, 'Copy the habits of the one you admire.', {'standing':'-'}, 'The Ass resolved that he would live only upon dew, and in a short time died of hunger.', True),
|
||||
('new:ape_your_betters', 29, 'Pay someone powerful to lift you into a role beyond your nature.', {'standing':'-'}, 'suddenly he let her go, and she fell on a lofty mountain, dashing her shell to pieces.', True),
|
||||
('new:ape_your_betters', 31, 'Give up the work that feeds you to copy their habits.', {'money':'-'}, 'he could not change their color, while through want of food he perished.', True),
|
||||
('new:ape_your_betters', 52, 'Try the favourite\'s tricks on the boss.', {'standing':'-'}, 'drove out the Ass to his stable with kicks and clubs and cuffs.', True),
|
||||
('new:ape_your_betters', 68, 'Puff yourself up to match the one who crushed yours.', {'standing':'-'}, 'you would, I assure you, sooner burst than successfully imitate the hugeness of that monster.', False),
|
||||
('new:ape_your_betters', 98, 'Copy the antics everyone applauded in a favourite.', {'standing':'-'}, 'The owner went up after him and quickly drove him down, beating him severely with a thick wooden cudgel.', True),
|
||||
('new:ape_your_betters', 134, 'Try the experts\' job with their tools, untaught.', {'standing':'-'}, 'became tangled in the meshes and drowned.', True),
|
||||
('new:ape_your_betters', 170, 'Speak up as if your word carried a respected colleague\'s weight.', {'standing':'-'}, M, True),
|
||||
('new:ape_your_betters', 180, 'Copy an admired style until you lose your own.', {'standing':'-'}, 'in trying to neigh, they forgot how to sing.', False),
|
||||
('new:ape_your_betters', 186, 'Leave your peers to live among those at the top.', {'standing':'-'}, 'in a herd of lions you are definitely a wolf.', False),
|
||||
('new:ape_your_betters', 258, 'Try a bigger version of the star performer\'s feat.', {'standing':'-'}, 'He at once clipped the Jackdaw’s wings, and taking him home at night, gave him to his children.', True),
|
||||
('new:ape_your_betters', 265, 'Get up and try to outdo the colleague everyone applauded.', {'standing':'-'}, 'the Beasts, in a fit of indignation, set upon him with clubs and drove him out of the assembly.', True),
|
||||
('pretence', 40, 'Disguise yourself as one of the harmless to get what you want.', {'standing':'-'}, 'mistakenly caught up the Wolf instead of a sheep, and killed him instantly.', True),
|
||||
('pretence', 42, 'Boast of a feat done far away, with witnesses.', {'standing':'-'}, 'Suppose this to be Rhodes, and leap for us.', False),
|
||||
('pretence', 65, 'Present yourself decked in achievements borrowed from colleagues.', {'standing':'-', 'relationships.colleagues':'-'}, 'each plucked from him his own feathers, leaving the Jackdaw nothing but a Jackdaw.', True),
|
||||
('pretence', 198, 'Lie about your background to someone helping you as one of their own.', {'standing':'-'}, 'The Dolphin, indignant at these falsehoods, dipped the Monkey under the water and drowned him.', True),
|
||||
('pretence', 200, 'Disguise yourself to share a better-fed group\'s benefits.', {'standing':'-', 'relationships.own_kind':'-'}, 'They too, not recognizing him on account of his color, expelled him from living with them.', True),
|
||||
('pretence', 201, 'Inflate your background where nobody can contradict you.', {'standing':'-'}, M, False),
|
||||
('pretence', 234, 'Confess when your fake expertise is about to be tested.', {'standing':'-'}, 'confessed that he had no knowledge of medicine, and was only made famous by the stupid clamors of the crowd.', True),
|
||||
('pretence', 251, 'Borrow the trappings of authority and frighten people with them.', {'standing':'-'}, 'I might possibly have been frightened myself, if I had not heard your bray.', True),
|
||||
('courage_doubted', 138, 'Talk big, then back out when offered the real thing.', {'standing':'-'}, 'it is his track only I am in search of, not the Lion himself.', False),
|
||||
('courage_doubted', 270, 'Run when your partner is in danger, then boast once it is over.', {'relationships.partner':'-'}, 'no dependence can be placed on your valor.', True),
|
||||
('habit', 148, 'Let an old appetite break your polished act.', {'standing':'-'}, 'The dancing spectacle thus came to an end amidst the laughter and ridicule of the audience.', True),
|
||||
('habit', 302, 'Let an old temptation pull you out of your new role.', {'standing':'-'}, 'Venus was much disappointed and again caused her to return to her former shape.', True),
|
||||
('caught_out', 99, 'Relax once the careless have passed you by.', {'standing':'-'}, 'he ordered that the Stag should be seized and killed.', True),
|
||||
('caught_out', 160, 'Laugh along when your secret is exposed.', {'relationships.companions':'+'}, 'with great glee joined in the joke', False),
|
||||
('cover_up_spiral', 41, 'Ask the witness to keep quiet about the damage.', {'relationships.boss':'-'}, 'the horn will speak though I be silent.', False),
|
||||
# ---- riding high, and the sneer -------------------------------------------------------------------
|
||||
('new:riding_high', 27, 'Make a great commotion about what you are about to produce.', {'standing':'-'}, 'out came a Mouse.', False),
|
||||
('new:riding_high', 57, 'Parade the mark you take for an honour.', {'standing':'-'}, 'a public notice to all men to avoid you as an ill mannered dog.', True),
|
||||
('new:riding_high', 71, 'Crow over your beaten rival from the most exposed place.', {'standing':'-'}, 'An Eagle sailing through the air pounced upon him and carried him off in his talons.', True),
|
||||
('new:riding_high', 108, 'Wear your marks of rank into the fight.', {'standing':'-'}, 'The generals, not being able to get in on account of the ornaments on their heads, were all captured and eaten by the Weasels.', True),
|
||||
('new:riding_high', 110, 'Chase someone powerful who has just backed off from another.', {'standing':'-'}, 'the Lion, turning about, seized him and tore him to pieces.', True),
|
||||
('new:riding_high', 117, 'Take the bows meant for what you carry as your own.', {'standing':'-'}, 'laid his whip lustily about his shoulders', True),
|
||||
('new:riding_high', 126, 'Ask, incognito, how highly you are rated.', {'standing':'-'}, 'Well, if you will buy these, I’ll fling you that into the bargain.', True),
|
||||
('new:riding_high', 141, 'Claim to outshine the people who truly lead.', {'standing':'-'}, 'Boast no more, but henceforth be content to give thy light in silence.', True),
|
||||
('new:riding_high', 194, 'Celebrate loudly after beating a powerful opponent.', {'standing':'-'}, 'he became entangled in the meshes of a cobweb and was eaten by a spider.', False),
|
||||
('new:riding_high', 245, 'Think yourself bigger than those above you.', {'standing':'-'}, 'this overestimation of myself is the cause of my destruction.', True),
|
||||
('new:riding_high', 264, 'Make a show of whether to leave, sure you will be missed.', {'standing':'-'}, 'I did not know you had come, and I shall not miss you when you go away.', True),
|
||||
('new:riding_high', 290, 'Carry your valuable load with your bells ringing.', {'money':'-', 'standing':'-'}, 'wounded with a sword the Mule carrying the treasure, which they greedily seized while taking no notice of the grain.', False),
|
||||
('new:sneered_at', 7, 'Answer that your plainness lasts when times turn hard.', {'standing':'+'}, 'The Crow put an end to the dispute by saying,', True),
|
||||
('new:sneered_at', 11, 'Challenge the one who mocks you, and keep a steady pace.', {'standing':'+'}, M, True),
|
||||
('new:sneered_at', 11, 'Take the contest for granted and rest.', {'standing':'-'}, 'he saw the Tortoise had reached the goal, and was comfortably dozing after her fatigue.', True),
|
||||
('new:sneered_at', 22, 'Answer that yours are few but of real quality.', {'standing':'+'}, M, False),
|
||||
('new:sneered_at', 70, 'Mock the hard worker from your idle favour.', {'standing':'-'}, 'For this you were allowed to live in idleness, because you were presently to be sacrificed.', False),
|
||||
('new:sneered_at', 155, 'Answer the display of credentials with your wits.', {'standing':'+'}, 'And how much more beautiful than you am I, who am decorated, not in body, but in mind.', False),
|
||||
('new:sneered_at', 167, 'Answer the show-off with what you can actually do.', {'standing':'+'}, M, False),
|
||||
('new:sneered_at', 223, 'Hold your peace and wait for their fall.', {'relationships.rival':'-'}, 'The Ass held his peace, and made only a silent appeal to the justice of the gods.', False),
|
||||
('new:sneered_at', 223, 'Sneer at a laden colleague from your height of favour.', {'standing':'-'}, 'the Horse, having become broken-winded, was sent by his owner to the farm.', False),
|
||||
('new:sneered_at', 226, 'Heed only the one in charge, not the loud one.', {'relationships.boss':'+'}, 'I only care for him who sits above you', False),
|
||||
('new:sneered_at', 310, 'Keep up appearances in every season, and mock those who scale back.', {'standing':'-'}, 'at once despoiling it of its beauty and killing the tree.', True),
|
||||
('new:sneered_at', 310, 'Scale back in lean seasons, whatever the mockers say.', {'standing':'+'}, 'the snow fell through to the ground, and did not injure it at all.', False),
|
||||
# ---- help asked, and who repays -------------------------------------------------------------------
|
||||
('plea_for_help', 0, 'Spare someone beneath you who begs to be let off.', {'relationships.spared':'+'}, 'now you know that it is possible for even a Mouse to confer benefits on a Lion.', True),
|
||||
('plea_for_help', 10, 'Refuse someone who idled while you saved.', {'relationships.asker':'-'}, 'If you were foolish enough to sing all the summer, you must dance supperless to bed in the winter.', False),
|
||||
('plea_for_help', 10, 'Ask those who saved to share with you, having idled yourself.', {'standing':'-'}, 'If you were foolish enough to sing all the summer, you must dance supperless to bed in the winter.', True),
|
||||
('plea_for_help', 23, 'Take in and nurse someone known for treachery.', {'relationships.helped':'-', 'standing':'-'}, 'bit its benefactor, inflicting on him a mortal wound.', True),
|
||||
('plea_for_help', 51, 'Refuse to take any of a struggling partner\'s load.', {'relationships.partner':'-', 'money':'-'}, 'I should not now be bearing, together with his burden, himself as well.', True),
|
||||
('plea_for_help', 132, 'Help someone in trouble who can give nothing now.', {'relationships.helped':'+'}, 'The Ant, perceiving his design, stung him in the foot.', True),
|
||||
('plea_for_help', 154, 'Free someone caught in a trap.', {'relationships.freed':'+'}, 'he marveled at the service rendered him by the Eagle.', True),
|
||||
('plea_for_help', 190, 'Rescue someone from a dangerous enemy.', {'relationships.rescued':'+', 'relationships.enemy':'-'}, 'The Serpent, irritated at the escape of his prey, injected his poison into the drinking horn of the countryman.', True),
|
||||
('plea_for_help', 230, 'Give to those who already serve you, not to those who promise.', {'relationships.staff':'+'}, 'It is surely better for me to give the water to them than to you.', False),
|
||||
('plea_for_help', 286, 'Grab for help from someone known to take from everyone.', {'standing':'-'}, 'Having pricked and grievously torn the soles of his feet', True),
|
||||
('plea_for_help', 296, 'Pull the thorn from someone dangerous who is in pain.', {'relationships.helped':'+', 'standing':'+'}, 'the Shepherd to be pardoned and restored to his friends.', True),
|
||||
('protecting_hunted', 127, 'Protect the hunted in words while your gestures give them away.', {'relationships.hunted':'-'}, 'the Fox departed without taking any notice of the Woodcutter', True),
|
||||
('protecting_hunted', 193, 'Help yourself to your protector\'s things once the danger seems past.', {'standing':'-'}, 'seeing the Hart, shot an arrow from his bow and struck it.', True),
|
||||
('despised', 0, 'Offer your help to someone powerful who laughs at the idea.', {'relationships.powerful':'+'}, 'The Lion laughed and let him go.', True),
|
||||
('unwelcome_in_home', 261, 'Let someone use your space a little longer.', {'money':'-'}, 'asserted her exclusive right to the place and would not permit the shepherd to approach.', True),
|
||||
('unwelcome_in_home', 294, 'Keep promising the neighbour who wants you gone that you will leave soon.', {'relationships.neighbour':'+'}, 'the rich man became accustomed to the smell, and feeling no manner of inconvenience, made no further complaints.', False),
|
||||
('after_your_money', 60, 'Let every well-wisher help themselves while you are down.', {'money':'-'}, 'he died, not from his sickness, but from the failure of the means of living.', True),
|
||||
# ---- wanting more ---------------------------------------------------------------------------------
|
||||
('new:grasping', 15, 'Let go of what you hold to snatch at a bigger prize.', {'money':'-'}, 'He thus lost both:', True),
|
||||
('new:grasping', 21, 'Keep indulging in the easy pleasure.', {'standing':'-'}, 'for the sake of a little pleasure we have destroyed ourselves.', True),
|
||||
('new:grasping', 46, 'Take half and get your hand free.', {'money':'-'}, 'Be satisfied with half the quantity, and you will readily draw out your hand.', False),
|
||||
('new:grasping', 95, 'Repeat the pleasing exchange every day.', {'relationships.partner':'-'}, 'If you go on in this way, you will soon destroy by frequent use the pleasure of your exchange', False),
|
||||
('new:grasping', 113, 'Spend, in your head, what your one asset will become.', {'money':'-'}, 'down fell the milk pail to the ground, and all her imaginary schemes perished in a moment.', True),
|
||||
('new:grasping', 137, 'Keep the small sure catch rather than wait for a bigger one.', {'money':'+'}, 'I were to forego my present certain gain.', True),
|
||||
('new:grasping', 139, 'Help yourself freely to what is left unguarded.', {'standing':'-'}, 'he was so full that he was not able to get out', False),
|
||||
('new:grasping', 151, 'Bite off more than you can swallow in someone else\'s field.', {'standing':'-'}, 'burst its deep gullet-bag and lay down on the shore to die.', True),
|
||||
('new:grasping', 156, 'Leave the sure win to chase the bigger prize.', {'money':'-'}, 'I am rightly served, for having let go of the food that I had in my hand for the chance of obtaining more.', True),
|
||||
('new:grasping', 168, 'Break open the steady source to get everything at once.', {'money':'-'}, 'deprived themselves of the gain of which they were assured day by day.', True),
|
||||
('new:grasping', 179, 'Feed the steady source extra to double what it yields.', {'money':'-'}, 'the Hen became fat and sleek, and never once laid another egg.', True),
|
||||
('new:grasping', 213, 'Keep the one in hand rather than chase bigger ones not yet in sight.', {'money':'+'}, 'I should indeed have lost my senses if I should let go food ready in my hand', True),
|
||||
('new:grasping', 266, 'Agree on a plan that needs the impossible to reach what you want.', {'standing':'-'}, 'they burst themselves with drinking long before they reached the hides.', True),
|
||||
('new:grasping', 279, 'Linger where it is most rewarding.', {'standing':'-'}, 'For the sake of a little pleasant food I have deprived myself of my life.', True),
|
||||
('mistook_them', 44, 'Hoard what you never use.', {'money':'-'}, 'digging down, came to the lump of gold, and stole it.', True),
|
||||
('mistook_them', 262, 'Prize your showy strengths over your plain ones.', {'standing':'-'}, 'These feet which would have saved me I despised, and I gloried in these antlers which have proved my destruction.', True),
|
||||
# ---- divided sides and doubtful partners ----------------------------------------------------------
|
||||
('new:divided', 4, 'Show your quarrelling people that together they cannot be broken.', {'relationships.team':'+'}, 'if you are divided among yourselves, you will be broken as easily as these sticks.', False),
|
||||
('new:divided', 75, 'Stop supplying the part you resent.', {'standing':'-'}, 'The whole Body quickly became debilitated', True),
|
||||
('new:divided', 80, 'Offer to settle a quarrel between powerful factions.', {'relationships.factions':'-'}, 'We would far rather be destroyed in our battle with each other than admit any interference from you in our affairs.', True),
|
||||
('new:divided', 105, 'Make peace with your rival once you see others waiting to profit.', {'relationships.rival':'+'}, 'They at once made up their quarrel', True),
|
||||
('new:divided', 124, 'Fight a client over a technicality.', {'money':'-'}, 'The quarrel proceeded from words to blows, and while the men fought, the Ass galloped off.', True),
|
||||
('new:divided', 152, 'Fight a rival to exhaustion over one prize.', {'money':'-'}, 'He ran in between them, and seizing the Kid scampered off as fast as he could.', True),
|
||||
('new:divided', 171, 'Give up one junior member when you are asked.', {'standing':'-'}, 'The first step has lost us all.', True),
|
||||
('new:divided', 185, 'Believe a colleague\'s whisper that your neighbour means you harm.', {'relationships.neighbour':'-', 'standing':'-'}, 'the Eagle, full of fear of the Sow, sat still on the branches, and the Sow, terrified by the Eagle, did not dare to go out from her cave.', True),
|
||||
('new:divided', 224, 'Go your own way when a smooth talker suggests it.', {'standing':'-'}, 'he attacked them without fear as they fed alone, and feasted on them one by one at his own leisure.', True),
|
||||
('new:divided', 246, 'Keep switching to whichever side is winning.', {'relationships.both_sides':'-', 'standing':'-'}, 'being condemned by each for his treachery, he was driven forth from the light of day', True),
|
||||
('new:doubtful_ally', 12, 'Decline to share premises with someone whose work undoes yours.', {'money':'-'}, 'whatever I should whiten, you would immediately blacken again with your charcoal.', False),
|
||||
('new:doubtful_ally', 37, 'Save yourself and leave your companion to face it.', {'relationships.companion':'-'}, 'Never travel with a friend who deserts you at the approach of danger.', True),
|
||||
('new:doubtful_ally', 58, 'Treat new allies better than old ones to win them.', {'relationships.new_allies':'-'}, 'the Wild Goats scampered away as fast as they could to the mountains.', True),
|
||||
('new:doubtful_ally', 90, 'Bind your fortunes to a new acquaintance on their ground.', {'standing':'-'}, 'The unhappy Mouse was soon suffocated by the water', True),
|
||||
('new:doubtful_ally', 102, 'Swear friendship with an impressive ally from another field.', {'relationships.ally':'-'}, 'The Lion abused him as a traitor.', True),
|
||||
('new:doubtful_ally', 182, 'Decline to join the weak side against the powerful.', {'relationships.weak_side':'-'}, M, False),
|
||||
('new:doubtful_ally', 184, 'Refuse a loan guaranteed by someone known for taking and running.', {'relationships.borrower':'-'}, 'How then shall I be able to find you, when the day of payment comes?', False),
|
||||
('new:doubtful_ally', 256, 'Argue both sides of a question in front of a new ally.', {'relationships.ally':'-'}, 'I can no longer consider you as a friend', True),
|
||||
('new:doubtful_ally', 259, 'Take from a weaker neighbour who trusted you.', {'standing':'-'}, 'the eaglets, as yet unfledged and helpless, were roasted in their nest and dropped down dead at the bottom of the tree.', False),
|
||||
('new:doubtful_ally', 277, 'Ask for a surety before allying with someone who can walk away.', {'relationships.ally':'-'}, M, False),
|
||||
('new:doubtful_ally', 284, 'Doubt a large promise from someone who refuses a small favour now.', {'relationships.partner':'-'}, 'I can’t think that you, who refuse me a little matter now, will by and by confer on me a greater benefit.', False),
|
||||
('new:doubtful_ally', 299, 'Accept a partner on the strength of their boasts.', {'relationships.partner':'-'}, 'brought back the shabbiest possible mouse, stinking from the length of time it had lain about the fields.', True),
|
||||
('own_words_back', 120, 'Hold your companion to their own words.', {'relationships.companion':'-'}, M, False),
|
||||
('own_words_back', 67, 'Rob the client while doing the job, then sue for your fee.', {'money':'-'}, 'I on the contrary affirm that I am still blind;', False),
|
||||
('newcomer', 254, 'Fall in first with the idlest of the group.', {'standing':'-'}, 'the man put a halter on him and led him back to his owner.', True),
|
||||
# ---- the lion's share, and predators let in -------------------------------------------------------
|
||||
('new:lions_share', 3, 'Do the risky job first and ask for the fee after.', {'money':'-'}, M, True),
|
||||
('new:lions_share', 101, 'Go into a venture with a far stronger partner.', {'money':'-'}, 'unless you willingly resign it to me, and set off as fast as you can.', True),
|
||||
('new:lions_share', 158, 'Divide the spoils fairly with the powerful partner.', {'standing':'-'}, 'The Lion, bursting out into a great rage, devoured the Ass.', True),
|
||||
('new:lions_share', 158, 'Leave yourself the smallest share.', {'money':'-', 'standing':'+'}, 'Who has taught you, my very excellent fellow, the art of division? You are perfect to a fraction.', True),
|
||||
('new:lions_share', 274, 'Go it alone because the stronger partner takes most.', {'standing':'-'}, 'he himself fell prey to the huntsmen and hounds.', True),
|
||||
('new:predator_inside', 83, 'Train someone to take from others for you.', {'relationships.pupil':'-'}, 'Since you have taught me to steal, you must keep a sharp lookout, or you will lose some of your own flock.', False),
|
||||
('new:predator_inside', 129, 'Shut someone far more dangerous in with you.', {'money':'-'}, 'he flew upon the sheep and killed them, and then attacked the oxen.', True),
|
||||
('new:predator_inside', 164, 'Warn the boss before the predator is let in.', {'relationships.boss':'+'}, 'Master, how can you expect the sheep to be safe if you admit a wolf into the fold?', False),
|
||||
('new:predator_inside', 210, 'Leave someone long harmless in charge.', {'money':'-'}, 'The Wolf, now that he had the opportunity, fell upon the sheep, and destroyed the greater part of the flock.', True),
|
||||
('new:predator_inside', 233, 'Refuse to admit a newcomer with a predator\'s instincts.', {'relationships.newcomer':'-'}, M, False),
|
||||
('new:predator_inside', 281, 'Nurture newcomers likely to turn on everyone.', {'relationships.newcomers':'-'}, 'will inflict injury on all, beginning with yourself?', False),
|
||||
('mercy_or_law', 86, 'Praise a small ill-gotten gain from someone in your charge.', {'relationships.charge':'-'}, 'he quickly seized her ear with his teeth and bit it off.', True),
|
||||
# ---- heedless, warnings, records ------------------------------------------------------------------
|
||||
('new:heedless', 13, 'Grab the next easy win without looking.', {'money':'-'}, 'If you had but touched me, my friend, you would have lost me, and all your locusts too!', False),
|
||||
('new:heedless', 30, 'Go in because someone praises it, without checking the way out.', {'standing':'-'}, 'nor have exposed yourself to dangers from which you had no means of escape.', True),
|
||||
('new:heedless', 32, 'Rush at what you need the moment it appears.', {'standing':'-'}, 'Having broken her wings by the blow, she fell to the ground, and was caught by one of the bystanders.', True),
|
||||
('new:heedless', 62, 'Keep your eyes on lofty plans and ignore what is at your feet.', {'standing':'-'}, 'he fell accidentally into a deep well.', True),
|
||||
('new:heedless', 107, 'Guard only against the danger you expect.', {'standing':'-'}, 'Some boatmen sailing by saw her, and taking a successful aim, mortally wounded her.', True),
|
||||
('new:heedless', 140, 'Ask how you would get out before you go in.', {'standing':'+'}, M, False),
|
||||
('new:heedless', 150, 'Doze on the edge of danger, and blame luck if you fall.', {'standing':'-'}, M, False),
|
||||
('new:heedless', 216, 'Stay heavy and slow while danger comes for everyone.', {'standing':'-'}, 'the Geese, being slower of flight and heavier in their bodies, were captured.', True),
|
||||
('new:heedless', 222, 'Stalk your target without watching your own feet.', {'standing':'-'}, 'he unknowingly trod upon a Viper asleep just before his feet.', True),
|
||||
('new:heedless', 289, 'Swallow the new thing whole because it looks like the familiar.', {'standing':'-'}, 'Soon afterwards suffering great pain in his stomach', True),
|
||||
('new:heedless', 308, 'Seize the easy prize lying unguarded.', {'standing':'-'}, 'The Serpent, turning about, bit the Crow with a mortal wound.', True),
|
||||
('sign', 247, 'Sell your last safeguard on an early sign of good times.', {'money':'-'}, 'winter set in again with renewed frost and cold.', True),
|
||||
('warning', 35, 'Ignore threats that have never been carried out.', {'standing':'-'}, 'The Farmer, on seeing this, charged his sling with stones, and killed a great number.', True),
|
||||
('warning', 112, 'Prepare while things are quiet.', {'money':'-'}, M, False),
|
||||
('warning', 214, 'Stay put while they only ask others, and move when they will act themselves.', {'standing':'+'}, 'It is time now to be off, my little ones, for the man is in earnest this time', False),
|
||||
('warning', 241, 'Put off building your security once times are easy.', {'money':'+'}, 'it would be neither an easy nor a necessary work to make himself such a house as would accommodate him.', False),
|
||||
('warning', 249, 'Warn early, though they call you mad.', {'standing':'+'}, 'they wondered at her knowledge and deemed her to be the wisest of birds.', True),
|
||||
('go_and_look', 106, 'Agree the plan, then wait for someone else to carry it out.', {'standing':'-'}, 'there was no one found to do it.', False),
|
||||
('new:bad_record', 54, 'Raise a real alarm after false ones.', {'money':'-'}, 'The Wolf, having no cause of fear, at his leisure lacerated or destroyed the whole flock.', True),
|
||||
('new:bad_record', 104, 'Look for help after cheating everyone who could give it.', {'relationships.allies':'-'}, 'which of the gods do you think will pity you?', True),
|
||||
('new:bad_record', 235, 'Make a show of a favour you could never have used yourself.', {'relationships.neighbour':'-'}, M, False),
|
||||
('new:bad_record', 243, 'Make a new vow to a new patron after breaking the last.', {'relationships.patron':'-'}, 'how can I believe thee, who hast disowned and wronged thy former patron?', True),
|
||||
('waiting', 267, 'Keep waiting for an out-of-season promise to come good.', {'money':'-'}, 'you are indulging a hope strong enough to cheat you, but which will never reward you with enjoyment.', False),
|
||||
('waiting', 280, 'Wait on an angry threat that seems to promise you a windfall.', {'money':'-'}, 'The Wolf, hearing these words, went home, gasping with cold and hunger.', False),
|
||||
# ---- criticism, the strong and the weak, revenge -------------------------------------------------
|
||||
('new:pot_and_kettle', 38, 'Urge everyone to give up what you have lost.', {'standing':'-'}, 'If you had not yourself lost your tail, my friend, you would not thus counsel us.', True),
|
||||
('new:pot_and_kettle', 84, 'Correct a junior for a fault you share.', {'standing':'-'}, 'The Mother tried in vain, and submitted without remonstrance to the reproof of her child.', True),
|
||||
('new:pot_and_kettle', 111, 'Tell those who blame you to stop joining you.', {'relationships.critics':'-'}, 'Pray cease to flow into me, and then you will not be made briny.', False),
|
||||
('new:pot_and_kettle', 116, 'Recommend your own trade as the answer to a crisis.', {'standing':'-'}, M, False),
|
||||
('new:pot_and_kettle', 153, 'Condemn those above for what you do to those below.', {'standing':'-'}, 'Mercury presented himself, and striking the Philosopher with his wand', True),
|
||||
('new:pot_and_kettle', 257, 'Find fault with everyone\'s work out of envy.', {'standing':'-'}, 'drove him from his office of judge, and expelled him from the mansions of Olympus.', True),
|
||||
('wrongly_judged', 9, 'Point out that you have long been ready and are waiting on them.', {'relationships.boss':'-'}, M, False),
|
||||
('called_to_account', 240, 'Turn the boss\'s anger back on the one accusing you.', {'standing':'+', 'relationships.accuser':'-'}, 'The Wolf was at once taken and flayed;', True),
|
||||
('new:needling_the_strong', 49, 'Make a great deal of a small liberty.', {'standing':'-'}, 'A fine Lion you are, to be frightened of a Mouse.', False),
|
||||
('new:needling_the_strong', 66, 'Taunt someone powerful while you are out of their reach.', {'standing':'+'}, M, False),
|
||||
('new:needling_the_strong', 145, 'Sting the powerful again from your safe place.', {'standing':'+'}, 'The great do not always prevail.', True),
|
||||
('new:needling_the_strong', 159, 'Attack someone bigger while they shelter from a worse threat.', {'relationships.bigger':'-'}, 'Let that monster go away and I will soon let you know what is the respective strength of a Goat and a Bull.', False),
|
||||
('new:needling_the_strong', 252, 'Mock a colleague who has just been brought down.', {'standing':'-'}, 'While the Sparrow was thus speaking, a hawk suddenly seized him and killed him.', False),
|
||||
('new:needling_the_strong', 285, 'Bully the weak and flatter the strong.', {'standing':'+'}, 'I know whom I may bully and whom I must flatter; and I thus prolong my life to a good old age.', False),
|
||||
('new:needling_the_strong', 298, 'Pelt someone dangerous while they are down.', {'standing':'-'}, 'killing the Shepherds who had attacked him, raged with angry fury.', True),
|
||||
('new:needling_the_strong', 298, 'Feed someone dangerous while they are down.', {'relationships.powerful':'+'}, 'I return as an enemy only to those who injured me.', True),
|
||||
('new:needling_the_strong', 305, 'Strike at the small tormentor, whatever it costs you.', {'standing':'-'}, 'gave himself a heavy slap.', True),
|
||||
('revenge', 149, 'Take a cruel revenge on the one who robbed you.', {'money':'-'}, 'the Farmer reaped nothing that year and returned home grieving sorely.', True),
|
||||
('revenge', 166, 'Take your tormentor down with you.', {'standing':'-'}, 'At least my enemy and I shall perish together.', True),
|
||||
('revenge', 244, 'Humiliate a guest with hospitality they cannot use.', {'relationships.guest':'-'}, 'The Fox, unable even to taste it, met with a fitting requital, after the fashion of her own hospitality.', True),
|
||||
('revenge', 303, 'Pursue the powerful one who wronged you, even into their protector\'s presence.', {'relationships.powerful':'-'}, M, False),
|
||||
('owning_up', 48, 'Offer peace to someone you hurt, who hurt you worse.', {'relationships.wronged':'-'}, 'There can henceforth be no peace between us;', True),
|
||||
# ---- hard lots, used up, pleasing everyone, making them move --------------------------------------
|
||||
('new:hard_lot', 61, 'Grasp the prickly problem boldly.', {'standing':'+'}, 'grasp it boldly, and it will be soft as silk to your hand, and not in the least hurt you.', False),
|
||||
('new:hard_lot', 72, 'Keep bemoaning the post you have lost.', {'standing':'-'}, 'Forbear', False),
|
||||
('new:hard_lot', 191, 'Try something new, a little at a time.', {'money':'+'}, 'until he brought the water within his reach and thus saved his life.', True),
|
||||
('new:hard_lot', 195, 'Walk away saying you never wanted it.', {'standing':'+'}, 'The Grapes are sour, and not ripe as I thought.', False),
|
||||
('new:hard_lot', 301, 'Rage against the confinement meant to protect you.', {'standing':'-'}, 'A violent fever suddenly set in, from which he died not many days later.', True),
|
||||
('new:used_up', 74, 'Work a helper into the ground once the crisis has passed.', {'relationships.helper':'-'}, 'You must now go to the war on foot', True),
|
||||
('new:used_up', 118, 'Leave before the one who sacrificed others turns to you.', {'relationships.boss':'-'}, M, False),
|
||||
('new:used_up', 119, 'Ask to be praised for what you were, not blamed for what you are.', {'relationships.boss':'+'}, 'I rather deserve to be praised for what I have been, than to be blamed for what I am.', False),
|
||||
('new:used_up', 161, 'Complain that you are always given the hardest jobs.', {'relationships.boss':'-'}, 'You have only to thank yourselves for the misfortunes to which you are exposed', False),
|
||||
('new:please_everyone', 59, 'Let each party remake you to their taste.', {'relationships.parties':'-'}, M, True),
|
||||
('new:please_everyone', 143, 'Change how you work at every critic\'s word.', {'money':'-', 'standing':'-'}, 'by endeavoring to please everybody he had pleased nobody, and lost his Ass in the bargain.', True),
|
||||
('new:make_them_move', 14, 'Stop coaxing and use the tool you have.', {'money':'+'}, 'casting his net into the sea, made an excellent haul of fish.', True),
|
||||
('new:make_them_move', 69, 'Tell your successors there is treasure hidden in the work.', {'money':'+'}, 'the vines repaid their labor by an extraordinary and superabundant crop.', True),
|
||||
('new:make_them_move', 242, 'Use warmth, not force.', {'standing':'+'}, 'The Traveler no sooner felt his genial rays than he took off one garment after another', True),
|
||||
('new:make_them_move', 242, 'Push harder.', {'standing':'-'}, 'the keener his blasts, the closer the Traveler wrapped his cloak around him', True),
|
||||
]
|
||||
@@ -0,0 +1,67 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Render groups.json + records.json + options_by_entry.json as one self-contained page: REFERENCE.html."""
|
||||
import html, json, pathlib
|
||||
here = pathlib.Path(__file__).parent
|
||||
d = json.loads((here / 'groups.json').read_text())
|
||||
recs = {r['chunk']: r for r in json.loads((here / 'records.json').read_text())}
|
||||
stories = json.loads((here.parent / 'stories.json').read_text())
|
||||
obe = json.loads((here / 'options_by_entry.json').read_text())
|
||||
new = obe.pop('_new_entries')
|
||||
e = html.escape
|
||||
SRC = {'archetype': 'archetype', 'filled': 'filled gap'}
|
||||
def src(o):
|
||||
if o['source'].startswith('scene:'):
|
||||
n = o['source'].split(':')[1]
|
||||
return f'from fable {n}' + ('' if o['in_group'] else ' <span class="warn">(outside this group)</span>')
|
||||
return SRC[o['source']]
|
||||
def moves(m): return ' '.join(f'<code>{e(k)} {e(v)}</code>' for k, v in m.items())
|
||||
def scene(c):
|
||||
r = recs[c]
|
||||
moral = f'<br><i>Moral:</i> {e(r["moral"])}' if r['moral'] else ''
|
||||
return (f'<details><summary><b>{c}</b> · <i>{e(stories[r["story"]]["title"])}</i> — {e(r["predicament"])}</summary>'
|
||||
f'<p class="sum">{e(r["summary"])}{moral}</p></details>')
|
||||
def section(g):
|
||||
tag = ' <span class="warn">small group, below the 13-fable rule</span>' if g['small'] else ''
|
||||
return f'''<section><h2>{g["id"]} · {e(g["name"])}{tag}</h2>
|
||||
<p class="pred">{e(g["predicament"])}</p>
|
||||
<p class="meta">{e(g["sentence"])} · {len(g["members"])} fables · stage <b>{g["stage"]}</b></p>
|
||||
<h3>Options</h3><ol>{"".join(f"<li>{e(o['text'])} <span class='src'>{src(o)}</span><br>{moves(o['moves'])}</li>" for o in g["options"])}</ol>
|
||||
<h3>Fables</h3>{"".join(scene(m["chunk"]) for m in g["members"])}</section>'''
|
||||
big = ''.join(section(g) for g in d['groups'] if not g['small'])
|
||||
small = ''.join(section(g) for g in d['groups'] if g['small'])
|
||||
un = ''.join(scene(c) for c in d['unassigned'])
|
||||
def entry(k, v):
|
||||
name = new[k]['name'] + ' <span class="src">(new)</span>' if k in new else e(k)
|
||||
rows = ''.join(f'<li>{e(o["text"])} {moves(o["moves"])} <span class="src">fable {o["source"].split(":")[1]} · '
|
||||
f'{"<b>stated</b>" if o["stated"] else "inferred"}</span><br><span class="sum">“{e(o["evidence"])}”</span></li>'
|
||||
for o in v)
|
||||
return f'<details><summary><b>{name}</b> — {len(v)} options, {sum(o["stated"] for o in v)} stated</summary><ul>{rows}</ul></details>'
|
||||
opts = [o for v in obe.values() for o in v]
|
||||
meas = ''.join(entry(k, v) for k, v in obe.items())
|
||||
page = f'''<!doctype html><html lang="en"><head><meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1"><title>Aesop Reference Groups</title>
|
||||
<style>
|
||||
:root{{--bg:#fbfaf7;--fg:#1d1d1b;--mute:#6b6760;--line:#e2ded6;--acc:#2f5d8a;--warn:#a4481c}}
|
||||
@media (prefers-color-scheme:dark){{:root:not([data-theme="light"]){{--bg:#191917;--fg:#e8e6e1;--mute:#a09c94;--line:#34332f;--acc:#8ab4dc;--warn:#e6915f}}}}
|
||||
:root[data-theme="dark"]{{--bg:#191917;--fg:#e8e6e1;--mute:#a09c94;--line:#34332f;--acc:#8ab4dc;--warn:#e6915f}}
|
||||
body{{background:var(--bg);color:var(--fg);font:16px/1.5 Georgia,serif;max-width:52rem;margin:0 auto;padding:1rem 16px 4rem}}
|
||||
h1{{font-size:1.5rem}} h2{{font-size:1.15rem;margin:0 0 .3rem}} h3{{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--mute);margin:.9rem 0 .3rem}}
|
||||
section{{border-top:1px solid var(--line);padding:1.2rem 0}} .pred{{font-size:1.05rem;margin:.2rem 0}}
|
||||
.meta,.src,.sum{{color:var(--mute);font-size:.88rem}} .warn{{color:var(--warn);font-size:.85rem}}
|
||||
code{{font:12px ui-monospace,monospace;border:1px solid var(--line);border-radius:3px;padding:0 .3em;margin-right:.2em;overflow-wrap:anywhere}}
|
||||
li{{margin:.35rem 0}} details{{margin:.2rem 0}} summary{{cursor:pointer}} .sum{{margin:.2rem 0 .5rem 1.2rem}}
|
||||
</style></head><body>
|
||||
<h1>Aesop's Fables: reference groups</h1>
|
||||
<p class="meta"><i>Three Hundred Aesop's Fables</i>, tr. George Fyler Townsend, 1867 (Project Gutenberg). 313 fables, one scene
|
||||
per fable. Summaries, predicaments, groups, options and the options measurement written by Claude reading every fable:
|
||||
no inference of any kind. A comparison baseline, not a pack. Option moves give a direction only, never a number.</p>
|
||||
{big}
|
||||
<section><h2>Small groups (5-12 fables)</h2><p class="meta">Situations that recur, but below the 13-fable rule this corpus's size sets.</p></section>
|
||||
{small}
|
||||
<section><h2>Unassigned ({len(d["unassigned"])})</h2><p class="meta">Fables that fit no situation recurring in five or more fables.</p>{un}</section>
|
||||
<section><h2>Fables as an option source</h2>
|
||||
<p class="meta">{len(opts)} options for {len(obe)} catalogue situations, {sum(o["stated"] for o in opts)} of them
|
||||
<b>stated</b>: the fable's own outcome or moral shows where every move goes. The rest are inferred.</p>{meas}</section>
|
||||
</body></html>'''
|
||||
(here / 'REFERENCE.html').write_text(page, encoding='utf-8')
|
||||
print('wrote', here / 'REFERENCE.html', len(page), 'bytes')
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,36 @@
|
||||
"""Split the Project Gutenberg text of *Three Hundred Aesop's Fables*, translated by George Fyler Townsend (1867,
|
||||
eBook #21), one story per fable and ONE SCENE PER FABLE. This departs from the usual scene rule on purpose:
|
||||
most fables are under 80 words, so the rule's 80-word tail would discard them, and a fable split in two would
|
||||
lose its turn. Titles come from the contents (after its AESOP'S FABLES line); each must be found, in order, as
|
||||
a line of its own in the body. The preface and the life of Aesop are dropped. The printed drop capital was lost
|
||||
in transcription, so many fables open with the first word's initial letter missing (e.g. "WOLF" for "A WOLF")."""
|
||||
import json, pathlib, re, sys
|
||||
sys.path.insert(0, '..')
|
||||
from gutenberg_chunks import gutenberg_body, paragraphs
|
||||
|
||||
VOLUME = "Three Hundred Aesop's Fables (tr. George Fyler Townsend, 1867)"
|
||||
lines = gutenberg_body('corpus/three-hundred-aesops-fables.txt')
|
||||
c0 = next(i for i, l in enumerate(lines) if l.strip() == 'CONTENTS')
|
||||
f0 = next(i for i, l in enumerate(lines) if i > c0 and l.strip().upper().replace('Æ', 'AE') in ("AESOP’S FABLES", "AESOP'S FABLES"))
|
||||
titles = []
|
||||
for l in lines[f0 + 1:]:
|
||||
if l.strip(): titles.append(l.strip())
|
||||
elif titles and not any(x.strip() for x in lines[lines.index(l) + 1:lines.index(l) + 3]): break
|
||||
titles = [t for t in titles if t not in ('FOOTNOTES', 'INDEX')] # back matter listed in the contents
|
||||
body0 = next(i for i, l in enumerate(lines) if i > f0 + len(titles) and l.strip() == titles[0])
|
||||
heads, at = [], body0
|
||||
for t in titles:
|
||||
at = next(i for i in range(at, len(lines)) if lines[i].strip() == t and not lines[i].startswith(' '))
|
||||
heads.append(at); at += 1
|
||||
end = next(i for i in range(heads[-1] + 1, len(lines)) if lines[i].strip() in ('FOOTNOTES', 'INDEX'))
|
||||
stories, chunks = [], []
|
||||
for n, (t, a) in enumerate(zip(titles, heads)):
|
||||
text = ' '.join(paragraphs('\n'.join(lines[a + 1:(heads[n + 1] if n + 1 < len(heads) else end)])))
|
||||
w = len(text.split())
|
||||
stories.append({'volume': VOLUME, 'title': t, 'words': w, 'text': text})
|
||||
chunks.append({'story': n, 'title': t, 'volume': VOLUME, 'text': text, 'words': w})
|
||||
pathlib.Path('stories.json').write_text(json.dumps(stories, indent=1, ensure_ascii=False), encoding='utf-8')
|
||||
pathlib.Path('chunks.json').write_text(json.dumps(chunks, ensure_ascii=False), encoding='utf-8')
|
||||
ws = sorted(c['words'] for c in chunks)
|
||||
print(f'fables {len(stories)} words/fable min {ws[0]} median {ws[len(ws)//2]} max {ws[-1]} total {sum(ws):,}')
|
||||
print('shortest:', min(stories, key=lambda s: s['words'])['title'], '| longest:', max(stories, key=lambda s: s['words'])['title'])
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user