Files
kunail0804-ComfyUI-Scene-Co…/knowledge_base/gen_expression.json
T
54b76ca75a fix(compiler): recover lost scene detail via 16.4k Danbooru KB + harden analyzer (#79)
* fix: recover concept detail lost in resolver and harden analyzer parsing

Three shippability fixes for the v1 pipeline:

P2 (main): the Illustrious Resolver did exact-key KB lookup only, so any
compound concept the analyzer emits ("white summer dress", "black business
suit") missed and was dropped silently as SC0001. Add a deterministic
head-noun fallback (§17.2): on a miss, drop leading modifiers and look up the
longest remaining suffix ("white summer dress" -> "dress"). No tag/concept is
invented. Emits SC0019 (Concept Reduced) so the reduction is visible.

P1a: the analyzer required the entire model response to be a single JSON
document, so any surrounding prose ("Sure! Here is the scene:") failed parsing
and, with the prompt reused unchanged, every retry failed identically ->
empty output. Extract the first balanced top-level {...} object from
surrounding text (string-aware brace scan); the object bytes are unchanged and
must still validate, so this is unwrapping, not JSON repair.

P1b: the node's "raw" output was to_raw_json(result.data) -- a re-serialization
of the parsed Scene, so on failure it was empty and the model's actual text was
invisible. Capture the last raw model text in analyzer metadata and surface it
as the node's raw output.

Regenerated goldens: unknown_concepts "hologram jacket" now resolves to
"jacket" via head-noun fallback (intended).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* feat: add entry rating + resolver.include_nsfw gating

Foundations for the Danbooru-vocab KB: a per-entry `rating` (general|explicit,
default general) and a `resolver.include_nsfw` config flag (default false). The
resolver omits explicit-rated entries from lookup and expansion unless enabled,
so a gated concept is reported as unknown (SC0001). Schema, model, config, and
example config updated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* feat: generate KB from embedded Danbooru vocab (188 -> 16.4k tags)

Replace the coverage ceiling of the 188-entry hand KB by importing a large,
validated Danbooru tag vocabulary. This is the fix for the core "detail loss"
symptom: compound concepts the analyzer emits ("red dress", "sunflower field",
"train station platform") are now real tags that resolve instead of being
dropped.

- scripts/build_vocab.py: one-time dev step that filters the Raffle node's
  categorized tag dump (drops artist/character/copyright/attribution categories
  and subjective adjectives, keeps only id-pattern-valid tags) into a committed,
  self-contained snapshot at data/danbooru_vocab.txt (16.4k tags).
- scripts/generate_kb_from_vocab.py: additive, non-destructive generator. Writes
  knowledge_base/gen_<category>.json, mapping the Raffle categories to the 19
  canonical categories and tagging NSFW categories rating=explicit. Skips any tag
  already defined as a hand-curated id/alias, so the curated canonicalization
  (female + aliases) and expansions (school_uniform -> blazer, pleated_skirt) are
  preserved and always win.

Result: 16.4k additive entries + 188 curated. Plain natural-language concepts
now resolve broadly via curated aliases + head-noun fallback with no analyzer
prompt change; NSFW gated behind resolver.include_nsfw; golden and dataset tests
stay green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* style: ruff format build_vocab.py

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* fix(security): drop untrusted CLI path in build_vocab (SonarCloud S8707)

The --source CLI argument fed an untrusted path to the file system (taint).
The script is a one-time dev step; hard-code the source path constant instead.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: kunail0804 <kunail0804@gmail.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 19:45:32 +02:00

2530 lines
36 KiB
JSON

[
{
"id": "0_0",
"tags": [
"0 0"
],
"category": "expression"
},
{
"id": "3_3",
"tags": [
"3 3"
],
"category": "expression"
},
{
"id": "accidental_pervert",
"tags": [
"accidental pervert"
],
"category": "expression"
},
{
"id": "affectionate",
"tags": [
"affectionate"
],
"category": "expression"
},
{
"id": "age_conscious",
"tags": [
"age conscious"
],
"category": "expression"
},
{
"id": "ahegao",
"tags": [
"ahegao"
],
"category": "expression"
},
{
"id": "akanbe",
"tags": [
"akanbe"
],
"category": "expression"
},
{
"id": "anger_vein",
"tags": [
"anger vein"
],
"category": "expression"
},
{
"id": "annoyed",
"tags": [
"annoyed"
],
"category": "expression"
},
{
"id": "apologizing",
"tags": [
"apologizing"
],
"category": "expression"
},
{
"id": "aroused",
"tags": [
"aroused"
],
"category": "expression"
},
{
"id": "aroused_nosebleed",
"tags": [
"aroused nosebleed"
],
"category": "expression"
},
{
"id": "awestruck",
"tags": [
"awestruck"
],
"category": "expression"
},
{
"id": "awkward",
"tags": [
"awkward"
],
"category": "expression"
},
{
"id": "bad_face",
"tags": [
"bad face"
],
"category": "expression"
},
{
"id": "begging",
"tags": [
"begging"
],
"category": "expression"
},
{
"id": "biting_cheek",
"tags": [
"biting cheek"
],
"category": "expression"
},
{
"id": "blank_eyes",
"tags": [
"blank eyes"
],
"category": "expression"
},
{
"id": "blank_stare",
"tags": [
"blank stare"
],
"category": "expression"
},
{
"id": "blinking",
"tags": [
"blinking"
],
"category": "expression"
},
{
"id": "blood_on_face",
"tags": [
"blood on face"
],
"category": "expression"
},
{
"id": "blush_visible_through_hair",
"tags": [
"blush visible through hair"
],
"category": "expression"
},
{
"id": "body_blush",
"tags": [
"body blush"
],
"category": "expression"
},
{
"id": "bored",
"tags": [
"bored"
],
"category": "expression"
},
{
"id": "brain_freeze",
"tags": [
"brain freeze"
],
"category": "expression"
},
{
"id": "breast_awe",
"tags": [
"breast awe"
],
"category": "expression"
},
{
"id": "breast_conscious",
"tags": [
"breast conscious"
],
"category": "expression"
},
{
"id": "breast_envy",
"tags": [
"breast envy"
],
"category": "expression"
},
{
"id": "breath",
"tags": [
"breath"
],
"category": "expression"
},
{
"id": "breathing",
"tags": [
"breathing"
],
"category": "expression"
},
{
"id": "change_in_common_sense",
"tags": [
"change in common sense"
],
"category": "expression"
},
{
"id": "charisma_break",
"tags": [
"charisma break"
],
"category": "expression"
},
{
"id": "cheek_bulge",
"tags": [
"cheek bulge"
],
"category": "expression"
},
{
"id": "cheek_squash",
"tags": [
"cheek squash"
],
"category": "expression"
},
{
"id": "chestnut_mouth",
"tags": [
"chestnut mouth"
],
"category": "expression"
},
{
"id": "chuunibyou",
"tags": [
"chuunibyou"
],
"category": "expression"
},
{
"id": "clenched_teeth",
"tags": [
"clenched teeth"
],
"category": "expression"
},
{
"id": "clueless",
"tags": [
"clueless"
],
"category": "expression"
},
{
"id": "clumsy",
"tags": [
"clumsy"
],
"category": "expression"
},
{
"id": "cocked_eyebrow",
"tags": [
"cocked eyebrow"
],
"category": "expression"
},
{
"id": "cold",
"tags": [
"cold"
],
"category": "expression"
},
{
"id": "colored_mouth",
"tags": [
"colored mouth"
],
"category": "expression"
},
{
"id": "come_hither",
"tags": [
"come hither"
],
"category": "expression"
},
{
"id": "comedic_sweatdrop",
"tags": [
"comedic sweatdrop"
],
"category": "expression"
},
{
"id": "concentrating",
"tags": [
"concentrating"
],
"category": "expression"
},
{
"id": "confrontation",
"tags": [
"confrontation"
],
"category": "expression"
},
{
"id": "confused",
"tags": [
"confused"
],
"category": "expression"
},
{
"id": "congratulations",
"tags": [
"congratulations"
],
"category": "expression"
},
{
"id": "coughing",
"tags": [
"coughing"
],
"category": "expression"
},
{
"id": "covered_eyes",
"tags": [
"covered eyes"
],
"category": "expression"
},
{
"id": "crazy",
"tags": [
"crazy"
],
"category": "expression"
},
{
"id": "crazy_eyes",
"tags": [
"crazy eyes"
],
"category": "expression"
},
{
"id": "crazy_grin",
"tags": [
"crazy grin"
],
"category": "expression"
},
{
"id": "crazy_smile",
"tags": [
"crazy smile"
],
"category": "expression"
},
{
"id": "crying_with_eyes_open",
"tags": [
"crying with eyes open"
],
"category": "expression"
},
{
"id": "curious",
"tags": [
"curious"
],
"category": "expression"
},
{
"id": "dashed_eyes",
"tags": [
"dashed eyes"
],
"category": "expression"
},
{
"id": "dazed",
"tags": [
"dazed"
],
"category": "expression"
},
{
"id": "deadpan",
"tags": [
"deadpan"
],
"category": "expression"
},
{
"id": "defeat",
"tags": [
"defeat"
],
"category": "expression"
},
{
"id": "denial",
"tags": [
"denial"
],
"category": "expression"
},
{
"id": "depressed",
"tags": [
"depressed"
],
"category": "expression"
},
{
"id": "despair",
"tags": [
"despair"
],
"category": "expression"
},
{
"id": "determined",
"tags": [
"determined"
],
"category": "expression"
},
{
"id": "diamond_mouth",
"tags": [
"diamond mouth"
],
"category": "expression"
},
{
"id": "dilated_pupils",
"tags": [
"dilated pupils"
],
"category": "expression"
},
{
"id": "disappointed",
"tags": [
"disappointed"
],
"category": "expression"
},
{
"id": "disdain",
"tags": [
"disdain"
],
"category": "expression"
},
{
"id": "disgust",
"tags": [
"disgust"
],
"category": "expression"
},
{
"id": "distress",
"tags": [
"distress"
],
"category": "expression"
},
{
"id": "dizzy",
"tags": [
"dizzy"
],
"category": "expression"
},
{
"id": "dodododo",
"tags": [
"dodododo"
],
"category": "expression"
},
{
"id": "dojikko",
"tags": [
"dojikko"
],
"category": "expression"
},
{
"id": "dot_mouth",
"tags": [
"dot mouth"
],
"category": "expression"
},
{
"id": "dot_nose",
"tags": [
"dot nose"
],
"category": "expression"
},
{
"id": "double_gyaru_v",
"tags": [
"double gyaru v"
],
"category": "expression"
},
{
"id": "double_w",
"tags": [
"double w"
],
"category": "expression"
},
{
"id": "downcast_eyes",
"tags": [
"downcast eyes"
],
"category": "expression"
},
{
"id": "doyagao",
"tags": [
"doyagao"
],
"category": "expression"
},
{
"id": "dreaming",
"tags": [
"dreaming"
],
"category": "expression"
},
{
"id": "drooling",
"tags": [
"drooling"
],
"category": "expression"
},
{
"id": "drugged",
"tags": [
"drugged"
],
"category": "expression"
},
{
"id": "drunk",
"tags": [
"drunk"
],
"category": "expression"
},
{
"id": "ear_blush",
"tags": [
"ear blush"
],
"category": "expression"
},
{
"id": "eargasm",
"tags": [
"eargasm"
],
"category": "expression"
},
{
"id": "ecstasy",
"tags": [
"ecstasy"
],
"category": "expression"
},
{
"id": "elbow_blush",
"tags": [
"elbow blush"
],
"category": "expression"
},
{
"id": "emotionless_sex",
"tags": [
"emotionless sex"
],
"category": "expression"
},
{
"id": "empty_eyes",
"tags": [
"empty eyes"
],
"category": "expression"
},
{
"id": "envy",
"tags": [
"envy"
],
"category": "expression"
},
{
"id": "evil_eyes",
"tags": [
"evil eyes"
],
"category": "expression"
},
{
"id": "evil_grin",
"tags": [
"evil grin"
],
"category": "expression"
},
{
"id": "evil_smile",
"tags": [
"evil smile"
],
"category": "expression"
},
{
"id": "excessive_nosebleed",
"tags": [
"excessive nosebleed"
],
"category": "expression"
},
{
"id": "excited",
"tags": [
"excited"
],
"category": "expression"
},
{
"id": "exhausted",
"tags": [
"exhausted"
],
"category": "expression"
},
{
"id": "expressionless",
"tags": [
"expressionless"
],
"category": "expression"
},
{
"id": "eye_pop",
"tags": [
"eye pop"
],
"category": "expression"
},
{
"id": "eyebrows_visible_through_mask",
"tags": [
"eyebrows visible through mask"
],
"category": "expression"
},
{
"id": "eyes_in_shadow",
"tags": [
"eyes in shadow"
],
"category": "expression"
},
{
"id": "fabulous",
"tags": [
"fabulous"
],
"category": "expression"
},
{
"id": "faceoff",
"tags": [
"faceoff"
],
"category": "expression"
},
{
"id": "failure",
"tags": [
"failure"
],
"category": "expression"
},
{
"id": "fainted",
"tags": [
"fainted"
],
"category": "expression"
},
{
"id": "fainting",
"tags": [
"fainting"
],
"category": "expression"
},
{
"id": "false_smile",
"tags": [
"false smile"
],
"category": "expression"
},
{
"id": "fangs_out",
"tags": [
"fangs out"
],
"category": "expression"
},
{
"id": "feigning_sleep",
"tags": [
"feigning sleep"
],
"category": "expression"
},
{
"id": "female_orgasm",
"tags": [
"female orgasm"
],
"category": "expression"
},
{
"id": "fever",
"tags": [
"fever"
],
"category": "expression"
},
{
"id": "fidgeting",
"tags": [
"fidgeting"
],
"category": "expression"
},
{
"id": "fingersmile",
"tags": [
"fingersmile"
],
"category": "expression"
},
{
"id": "flinch",
"tags": [
"flinch"
],
"category": "expression"
},
{
"id": "flustered",
"tags": [
"flustered"
],
"category": "expression"
},
{
"id": "flying_sweatdrops",
"tags": [
"flying sweatdrops"
],
"category": "expression"
},
{
"id": "flying_teardrops",
"tags": [
"flying teardrops"
],
"category": "expression"
},
{
"id": "foaming_at_the_mouth",
"tags": [
"foaming at the mouth"
],
"category": "expression"
},
{
"id": "food_on_face",
"tags": [
"food on face"
],
"category": "expression"
},
{
"id": "foodgasm",
"tags": [
"foodgasm"
],
"category": "expression"
},
{
"id": "forced_smile",
"tags": [
"forced smile"
],
"category": "expression"
},
{
"id": "forked_eyebrows",
"tags": [
"forked eyebrows"
],
"category": "expression"
},
{
"id": "frustrated",
"tags": [
"frustrated"
],
"category": "expression"
},
{
"id": "full_mouth",
"tags": [
"full mouth"
],
"category": "expression"
},
{
"id": "furious",
"tags": [
"furious"
],
"category": "expression"
},
{
"id": "furrowed_brow",
"tags": [
"furrowed brow"
],
"category": "expression"
},
{
"id": "ganbaruzoi",
"tags": [
"ganbaruzoi"
],
"category": "expression"
},
{
"id": "gaping",
"tags": [
"gaping"
],
"category": "expression"
},
{
"id": "gasp",
"tags": [
"gasp"
],
"category": "expression"
},
{
"id": "gesugao",
"tags": [
"gesugao"
],
"category": "expression"
},
{
"id": "giggling",
"tags": [
"giggling"
],
"category": "expression"
},
{
"id": "giving_up_the_ghost",
"tags": [
"giving up the ghost"
],
"category": "expression"
},
{
"id": "glaring",
"tags": [
"glaring"
],
"category": "expression"
},
{
"id": "good_breasts_day",
"tags": [
"good breasts day"
],
"category": "expression"
},
{
"id": "goodbye",
"tags": [
"goodbye"
],
"category": "expression"
},
{
"id": "grimace",
"tags": [
"grimace"
],
"category": "expression"
},
{
"id": "growling",
"tags": [
"growling"
],
"category": "expression"
},
{
"id": "grumpy",
"tags": [
"grumpy"
],
"category": "expression"
},
{
"id": "gyate_gyate",
"tags": [
"gyate gyate"
],
"category": "expression"
},
{
"id": "hair_blush",
"tags": [
"hair blush"
],
"category": "expression"
},
{
"id": "hand_blush",
"tags": [
"hand blush"
],
"category": "expression"
},
{
"id": "hands_clasped_in_delight",
"tags": [
"hands clasped in delight"
],
"category": "expression"
},
{
"id": "hangover",
"tags": [
"hangover"
],
"category": "expression"
},
{
"id": "happy",
"tags": [
"happy"
],
"category": "expression"
},
{
"id": "happy_facial",
"tags": [
"happy facial"
],
"category": "expression"
},
{
"id": "happy_sex",
"tags": [
"happy sex"
],
"category": "expression"
},
{
"id": "happy_tears",
"tags": [
"happy tears"
],
"category": "expression"
},
{
"id": "have_to_pee",
"tags": [
"have to pee"
],
"category": "expression"
},
{
"id": "head_steam",
"tags": [
"head steam"
],
"category": "expression"
},
{
"id": "headache",
"tags": [
"headache"
],
"category": "expression"
},
{
"id": "heart_cheeks",
"tags": [
"heart cheeks"
],
"category": "expression"
},
{
"id": "heart_in_eye",
"tags": [
"heart in eye"
],
"category": "expression"
},
{
"id": "heart_in_mouth",
"tags": [
"heart in mouth"
],
"category": "expression"
},
{
"id": "heart_on_cheek",
"tags": [
"heart on cheek"
],
"category": "expression"
},
{
"id": "heartbeat",
"tags": [
"heartbeat"
],
"category": "expression"
},
{
"id": "heavy_breathing",
"tags": [
"heavy breathing"
],
"category": "expression"
},
{
"id": "height_conscious",
"tags": [
"height conscious"
],
"category": "expression"
},
{
"id": "henohenomoheji",
"tags": [
"henohenomoheji"
],
"category": "expression"
},
{
"id": "hidden_eyes",
"tags": [
"hidden eyes"
],
"category": "expression"
},
{
"id": "hidden_face",
"tags": [
"hidden face"
],
"category": "expression"
},
{
"id": "hissing",
"tags": [
"hissing"
],
"category": "expression"
},
{
"id": "hollow_eyes",
"tags": [
"hollow eyes"
],
"category": "expression"
},
{
"id": "hollow_mouth",
"tags": [
"hollow mouth"
],
"category": "expression"
},
{
"id": "horrified",
"tags": [
"horrified"
],
"category": "expression"
},
{
"id": "huffing",
"tags": [
"huffing"
],
"category": "expression"
},
{
"id": "humiliation",
"tags": [
"humiliation"
],
"category": "expression"
},
{
"id": "hungry",
"tags": [
"hungry"
],
"category": "expression"
},
{
"id": "imagining",
"tags": [
"imagining"
],
"category": "expression"
},
{
"id": "in_heat",
"tags": [
"in heat"
],
"category": "expression"
},
{
"id": "instant_loss",
"tags": [
"instant loss"
],
"category": "expression"
},
{
"id": "is_that_so",
"tags": [
"is that so"
],
"category": "expression"
},
{
"id": "jaw_drop",
"tags": [
"jaw drop"
],
"category": "expression"
},
{
"id": "jealous",
"tags": [
"jealous"
],
"category": "expression"
},
{
"id": "jitome",
"tags": [
"jitome"
],
"category": "expression"
},
{
"id": "knee_blush",
"tags": [
"knee blush"
],
"category": "expression"
},
{
"id": "kuudere",
"tags": [
"kuudere"
],
"category": "expression"
},
{
"id": "lazy_eye",
"tags": [
"lazy eye"
],
"category": "expression"
},
{
"id": "licking_lips",
"tags": [
"licking lips"
],
"category": "expression"
},
{
"id": "light_blush",
"tags": [
"light blush"
],
"category": "expression"
},
{
"id": "light_frown",
"tags": [
"light frown"
],
"category": "expression"
},
{
"id": "light_smile",
"tags": [
"light smile"
],
"category": "expression"
},
{
"id": "lonely",
"tags": [
"lonely"
],
"category": "expression"
},
{
"id": "lovestruck",
"tags": [
"lovestruck"
],
"category": "expression"
},
{
"id": "loving_aura",
"tags": [
"loving aura"
],
"category": "expression"
},
{
"id": "lower_teeth_only",
"tags": [
"lower teeth only"
],
"category": "expression"
},
{
"id": "lowered_eyelids",
"tags": [
"lowered eyelids"
],
"category": "expression"
},
{
"id": "mg_mg",
"tags": [
"mg mg"
],
"category": "expression"
},
{
"id": "middle_finger",
"tags": [
"middle finger"
],
"category": "expression"
},
{
"id": "middle_w",
"tags": [
"middle w"
],
"category": "expression"
},
{
"id": "mind_break",
"tags": [
"mind break"
],
"category": "expression"
},
{
"id": "misunderstanding",
"tags": [
"misunderstanding"
],
"category": "expression"
},
{
"id": "moaning",
"tags": [
"moaning"
],
"category": "expression"
},
{
"id": "mob_face",
"tags": [
"mob face"
],
"category": "expression"
},
{
"id": "mourning",
"tags": [
"mourning"
],
"category": "expression"
},
{
"id": "mouth_drool",
"tags": [
"mouth drool"
],
"category": "expression"
},
{
"id": "multiple_expressions",
"tags": [
"multiple expressions"
],
"category": "expression"
},
{
"id": "muscle_envy",
"tags": [
"muscle envy"
],
"category": "expression"
},
{
"id": "mute",
"tags": [
"mute"
],
"category": "expression"
},
{
"id": "narcissism",
"tags": [
"narcissism"
],
"category": "expression"
},
{
"id": "narrowed_eyes",
"tags": [
"narrowed eyes"
],
"category": "expression"
},
{
"id": "naughty_face",
"tags": [
"naughty face"
],
"category": "expression"
},
{
"id": "nausea",
"tags": [
"nausea"
],
"category": "expression"
},
{
"id": "neck_blush",
"tags": [
"neck blush"
],
"category": "expression"
},
{
"id": "nervous",
"tags": [
"nervous"
],
"category": "expression"
},
{
"id": "nervous_smile",
"tags": [
"nervous smile"
],
"category": "expression"
},
{
"id": "nervous_sweating",
"tags": [
"nervous sweating"
],
"category": "expression"
},
{
"id": "no",
"tags": [
"no"
],
"category": "expression"
},
{
"id": "no_mouth",
"tags": [
"no mouth"
],
"category": "expression"
},
{
"id": "nose_blush",
"tags": [
"nose blush"
],
"category": "expression"
},
{
"id": "nose_bubble",
"tags": [
"nose bubble"
],
"category": "expression"
},
{
"id": "nosebleed",
"tags": [
"nosebleed"
],
"category": "expression"
},
{
"id": "o3o",
"tags": [
"o3o"
],
"category": "expression"
},
{
"id": "o_o",
"tags": [
"o o"
],
"category": "expression"
},
{
"id": "odd_one_out",
"tags": [
"odd one out"
],
"category": "expression"
},
{
"id": "one_eye_closed",
"tags": [
"one eye closed"
],
"category": "expression"
},
{
"id": "opening_eyes",
"tags": [
"opening eyes"
],
"category": "expression"
},
{
"id": "orgasm",
"tags": [
"orgasm"
],
"category": "expression"
},
{
"id": "osugaki",
"tags": [
"osugaki"
],
"category": "expression"
},
{
"id": "pain",
"tags": [
"pain"
],
"category": "expression"
},
{
"id": "panicking",
"tags": [
"panicking"
],
"category": "expression"
},
{
"id": "parted_lips",
"tags": [
"parted lips"
],
"category": "expression"
},
{
"id": "peanut_mouth",
"tags": [
"peanut mouth"
],
"category": "expression"
},
{
"id": "penis_awe",
"tags": [
"penis awe"
],
"category": "expression"
},
{
"id": "pensive",
"tags": [
"pensive"
],
"category": "expression"
},
{
"id": "personality_switch",
"tags": [
"personality switch"
],
"category": "expression"
},
{
"id": "plap",
"tags": [
"plap"
],
"category": "expression"
},
{
"id": "pleading_eyes",
"tags": [
"pleading eyes"
],
"category": "expression"
},
{
"id": "pleading_face_emoji",
"tags": [
"pleading face emoji"
],
"category": "expression"
},
{
"id": "possessive",
"tags": [
"possessive"
],
"category": "expression"
},
{
"id": "pout",
"tags": [
"pout"
],
"category": "expression"
},
{
"id": "pouty_lips",
"tags": [
"pouty lips"
],
"category": "expression"
},
{
"id": "puckered_face",
"tags": [
"puckered face"
],
"category": "expression"
},
{
"id": "puckered_lips",
"tags": [
"puckered lips"
],
"category": "expression"
},
{
"id": "puff_of_air",
"tags": [
"puff of air"
],
"category": "expression"
},
{
"id": "puffy_cheeks",
"tags": [
"puffy cheeks"
],
"category": "expression"
},
{
"id": "puka_puka",
"tags": [
"puka puka"
],
"category": "expression"
},
{
"id": "pursed_lips",
"tags": [
"pursed lips"
],
"category": "expression"
},
{
"id": "ragequit",
"tags": [
"ragequit"
],
"category": "expression"
},
{
"id": "raised_eyebrow",
"tags": [
"raised eyebrow"
],
"category": "expression"
},
{
"id": "raised_eyebrows",
"tags": [
"raised eyebrows"
],
"category": "expression"
},
{
"id": "raised_inner_eyebrows",
"tags": [
"raised inner eyebrows"
],
"category": "expression"
},
{
"id": "rape_face",
"tags": [
"rape face"
],
"category": "expression"
},
{
"id": "rectangular_mouth",
"tags": [
"rectangular mouth"
],
"category": "expression"
},
{
"id": "rejection",
"tags": [
"rejection"
],
"category": "expression"
},
{
"id": "relaxing",
"tags": [
"relaxing"
],
"category": "expression"
},
{
"id": "roaring",
"tags": [
"roaring"
],
"category": "expression"
},
{
"id": "rolling_eyes",
"tags": [
"rolling eyes"
],
"category": "expression"
},
{
"id": "round_teeth",
"tags": [
"round teeth"
],
"category": "expression"
},
{
"id": "runny_nose",
"tags": [
"runny nose"
],
"category": "expression"
},
{
"id": "sad_smile",
"tags": [
"sad smile"
],
"category": "expression"
},
{
"id": "sadism",
"tags": [
"sadism"
],
"category": "expression"
},
{
"id": "saliva_trail_between_teeth",
"tags": [
"saliva trail between teeth"
],
"category": "expression"
},
{
"id": "sanpaku",
"tags": [
"sanpaku"
],
"category": "expression"
},
{
"id": "scared",
"tags": [
"scared"
],
"category": "expression"
},
{
"id": "scolding",
"tags": [
"scolding"
],
"category": "expression"
},
{
"id": "scowl",
"tags": [
"scowl"
],
"category": "expression"
},
{
"id": "screaming",
"tags": [
"screaming"
],
"category": "expression"
},
{
"id": "seductive_smile",
"tags": [
"seductive smile"
],
"category": "expression"
},
{
"id": "seeing_stars",
"tags": [
"seeing stars"
],
"category": "expression"
},
{
"id": "shaded_face",
"tags": [
"shaded face"
],
"category": "expression"
},
{
"id": "shoulder_blush",
"tags": [
"shoulder blush"
],
"category": "expression"
},
{
"id": "shy",
"tags": [
"shy"
],
"category": "expression"
},
{
"id": "sideways_mouth",
"tags": [
"sideways mouth"
],
"category": "expression"
},
{
"id": "sigh",
"tags": [
"sigh"
],
"category": "expression"
},
{
"id": "single_tear",
"tags": [
"single tear"
],
"category": "expression"
},
{
"id": "sleeping_with_eyes_open",
"tags": [
"sleeping with eyes open"
],
"category": "expression"
},
{
"id": "sleepy",
"tags": [
"sleepy"
],
"category": "expression"
},
{
"id": "small_sweatdrop",
"tags": [
"small sweatdrop"
],
"category": "expression"
},
{
"id": "smirk",
"tags": [
"smirk"
],
"category": "expression"
},
{
"id": "smug",
"tags": [
"smug"
],
"category": "expression"
},
{
"id": "sneer",
"tags": [
"sneer"
],
"category": "expression"
},
{
"id": "snoring",
"tags": [
"snoring"
],
"category": "expression"
},
{
"id": "snort",
"tags": [
"snort"
],
"category": "expression"
},
{
"id": "sobbing",
"tags": [
"sobbing"
],
"category": "expression"
},
{
"id": "solid_circle_eyes",
"tags": [
"solid circle eyes"
],
"category": "expression"
},
{
"id": "solid_oval_eyes",
"tags": [
"solid oval eyes"
],
"category": "expression"
},
{
"id": "sparkling_eyes",
"tags": [
"sparkling eyes"
],
"category": "expression"
},
{
"id": "spasm",
"tags": [
"spasm"
],
"category": "expression"
},
{
"id": "spicy",
"tags": [
"spicy"
],
"category": "expression"
},
{
"id": "split_mouth",
"tags": [
"split mouth"
],
"category": "expression"
},
{
"id": "square_eyes",
"tags": [
"square eyes"
],
"category": "expression"
},
{
"id": "squiggle_eyes",
"tags": [
"squiggle eyes"
],
"category": "expression"
},
{
"id": "squinting",
"tags": [
"squinting"
],
"category": "expression"
},
{
"id": "star_in_eye",
"tags": [
"star in eye"
],
"category": "expression"
},
{
"id": "staring",
"tags": [
"staring"
],
"category": "expression"
},
{
"id": "steam_from_mouth",
"tags": [
"steam from mouth"
],
"category": "expression"
},
{
"id": "stifled_laugh",
"tags": [
"stifled laugh"
],
"category": "expression"
},
{
"id": "stomach_ache",
"tags": [
"stomach ache"
],
"category": "expression"
},
{
"id": "stomach_growling",
"tags": [
"stomach growling"
],
"category": "expression"
},
{
"id": "stoned",
"tags": [
"stoned"
],
"category": "expression"
},
{
"id": "streaming_tears",
"tags": [
"streaming tears"
],
"category": "expression"
},
{
"id": "striped_blush",
"tags": [
"striped blush"
],
"category": "expression"
},
{
"id": "struggling",
"tags": [
"struggling"
],
"category": "expression"
},
{
"id": "stuck",
"tags": [
"stuck"
],
"category": "expression"
},
{
"id": "sulking",
"tags": [
"sulking"
],
"category": "expression"
},
{
"id": "surprised_arms",
"tags": [
"surprised arms"
],
"category": "expression"
},
{
"id": "sweat",
"tags": [
"sweat"
],
"category": "expression"
},
{
"id": "sweatdrop",
"tags": [
"sweatdrop"
],
"category": "expression"
},
{
"id": "t_t",
"tags": [
"t t"
],
"category": "expression"
},
{
"id": "tantrum",
"tags": [
"tantrum"
],
"category": "expression"
},
{
"id": "tareme",
"tags": [
"tareme"
],
"category": "expression"
},
{
"id": "tasukete_eirin",
"tags": [
"tasukete eirin"
],
"category": "expression"
},
{
"id": "taunting",
"tags": [
"taunting"
],
"category": "expression"
},
{
"id": "tearing_up",
"tags": [
"tearing up"
],
"category": "expression"
},
{
"id": "tears_from_one_eye",
"tags": [
"tears from one eye"
],
"category": "expression"
},
{
"id": "tehepero",
"tags": [
"tehepero"
],
"category": "expression"
},
{
"id": "thinking",
"tags": [
"thinking"
],
"category": "expression"
},
{
"id": "thinking_emoji",
"tags": [
"thinking emoji"
],
"category": "expression"
},
{
"id": "threat",
"tags": [
"threat"
],
"category": "expression"
},
{
"id": "tongue_out",
"tags": [
"tongue out"
],
"category": "expression"
},
{
"id": "too_literal",
"tags": [
"too literal"
],
"category": "expression"
},
{
"id": "too_many",
"tags": [
"too many"
],
"category": "expression"
},
{
"id": "torogao",
"tags": [
"torogao"
],
"category": "expression"
},
{
"id": "traumatized",
"tags": [
"traumatized"
],
"category": "expression"
},
{
"id": "trembling",
"tags": [
"trembling"
],
"category": "expression"
},
{
"id": "triangle_mouth",
"tags": [
"triangle mouth"
],
"category": "expression"
},
{
"id": "troll_face",
"tags": [
"troll face"
],
"category": "expression"
},
{
"id": "trypophobia",
"tags": [
"trypophobia"
],
"category": "expression"
},
{
"id": "tsundere",
"tags": [
"tsundere"
],
"category": "expression"
},
{
"id": "tsurime",
"tags": [
"tsurime"
],
"category": "expression"
},
{
"id": "turn_pale",
"tags": [
"turn pale"
],
"category": "expression"
},
{
"id": "twitching",
"tags": [
"twitching"
],
"category": "expression"
},
{
"id": "u_u",
"tags": [
"u u"
],
"category": "expression"
},
{
"id": "unamused",
"tags": [
"unamused"
],
"category": "expression"
},
{
"id": "unaware",
"tags": [
"unaware"
],
"category": "expression"
},
{
"id": "uncomfortable",
"tags": [
"uncomfortable"
],
"category": "expression"
},
{
"id": "unconscious",
"tags": [
"unconscious"
],
"category": "expression"
},
{
"id": "uneven_eyes",
"tags": [
"uneven eyes"
],
"category": "expression"
},
{
"id": "ungagged",
"tags": [
"ungagged"
],
"category": "expression"
},
{
"id": "unhappy",
"tags": [
"unhappy"
],
"category": "expression"
},
{
"id": "unusually_open_eyes",
"tags": [
"unusually open eyes"
],
"category": "expression"
},
{
"id": "upper_teeth_only",
"tags": [
"upper teeth only"
],
"category": "expression"
},
{
"id": "uwu",
"tags": [
"uwu"
],
"category": "expression"
},
{
"id": "v",
"tags": [
"v"
],
"category": "expression"
},
{
"id": "v_over_eye",
"tags": [
"v over eye"
],
"category": "expression"
},
{
"id": "v_over_mouth",
"tags": [
"v over mouth"
],
"category": "expression"
},
{
"id": "very_sweaty",
"tags": [
"very sweaty"
],
"category": "expression"
},
{
"id": "victory",
"tags": [
"victory"
],
"category": "expression"
},
{
"id": "w",
"tags": [
"w"
],
"category": "expression"
},
{
"id": "w_over_eye",
"tags": [
"w over eye"
],
"category": "expression"
},
{
"id": "waiting",
"tags": [
"waiting"
],
"category": "expression"
},
{
"id": "wavy_eyes",
"tags": [
"wavy eyes"
],
"category": "expression"
},
{
"id": "wavy_mouth",
"tags": [
"wavy mouth"
],
"category": "expression"
},
{
"id": "weight_conscious",
"tags": [
"weight conscious"
],
"category": "expression"
},
{
"id": "what",
"tags": [
"what"
],
"category": "expression"
},
{
"id": "wince",
"tags": [
"wince"
],
"category": "expression"
},
{
"id": "wink_star",
"tags": [
"wink star"
],
"category": "expression"
},
{
"id": "worried",
"tags": [
"worried"
],
"category": "expression"
},
{
"id": "wryyyyyyyyyyyyyyyyyyyy",
"tags": [
"wryyyyyyyyyyyyyyyyyyyy"
],
"category": "expression"
},
{
"id": "x",
"tags": [
"x"
],
"category": "expression"
},
{
"id": "x3",
"tags": [
"x3"
],
"category": "expression"
},
{
"id": "x_mouth",
"tags": [
"x mouth"
],
"category": "expression"
},
{
"id": "x_x",
"tags": [
"x x"
],
"category": "expression"
},
{
"id": "xd",
"tags": [
"xd"
],
"category": "expression"
},
{
"id": "yandere",
"tags": [
"yandere"
],
"category": "expression"
},
{
"id": "yandere_trance",
"tags": [
"yandere trance"
],
"category": "expression"
},
{
"id": "yaranaika",
"tags": [
"yaranaika"
],
"category": "expression"
},
{
"id": "yawning",
"tags": [
"yawning"
],
"category": "expression"
},
{
"id": "yes",
"tags": [
"yes"
],
"category": "expression"
},
{
"id": "yurie_mouth",
"tags": [
"yurie mouth"
],
"category": "expression"
},
{
"id": "zukyuun",
"tags": [
"zukyuun"
],
"category": "expression"
},
{
"id": "zzz",
"tags": [
"zzz"
],
"category": "expression"
}
]