{
 "$schema": "./conversation-skills.schema.json",
 "dataset": "GraphChinese Conversation Skill Graph",
 "version": "v1",
 "license": "CC-BY-4.0",
 "attribution": "GraphChinese, graphchinese.com",
 "source": "https://graphchinese.com",
 "hskNote": "hsk is the level of the course topic for a question frame; otherwise the lowest HSK level of an exchange in data/exchanges.json that uses one of the lines; otherwise the highest HSK level among the characters of the easiest line.",
 "moves": [
  {
   "id": "open",
   "name": "Open",
   "description": "Start a conversation with a stranger and earn the next line."
  },
  {
   "id": "point",
   "name": "Point",
   "description": "Refer to a thing you have no word for, so the other person can name it."
  },
  {
   "id": "name",
   "name": "Ask the name",
   "description": "Turn a thing in front of you into a word you can keep."
  },
  {
   "id": "life",
   "name": "Ask about their life",
   "description": "Move from the object to the person with a question they can talk about for minutes."
  },
  {
   "id": "receipt",
   "name": "Receipt",
   "description": "Show that the answer landed, so the speaker keeps going instead of switching to English."
  },
  {
   "id": "repair",
   "name": "Repair",
   "description": "Keep a failed exchange alive and come away with something, without rewinding the whole answer."
  },
  {
   "id": "chase",
   "name": "Chase",
   "description": "Open the next round of the story. One question buys a story, and a story is fifty words with a person attached."
  },
  {
   "id": "meta",
   "name": "Fine distinctions",
   "description": "Past HSK 3: ask how a word is used, by whom, and when, instead of asking for harder words."
  }
 ],
 "counts": {
  "skills": 99,
  "dependencies": 110,
  "skillsByMove": {
   "open": 7,
   "point": 10,
   "name": 18,
   "life": 13,
   "receipt": 10,
   "repair": 16,
   "chase": 15,
   "meta": 10
  }
 },
 "skills": [
  {
   "id": "cs_frame_survival_kit",
   "move": "name",
   "name": "The survival kit",
   "description": "A handful of lines that turn any patient speaker into a teacher: ask what a thing is, ask what a word means, and say that it landed.",
   "hsk": 0,
   "evidence": [
    "Asks 这是什么？ about an object without reaching for English",
    "Asks 什么意思？ right after hearing an unknown word",
    "Says 听懂了！ when an explanation lands, instead of going quiet"
   ],
   "assessmentPrompt": "Hand the learner an object they cannot name. Do they get its Chinese name from you, and its meaning, without either of you using English?",
   "lines": [
    "comment_this_what",
    "r_what_mean",
    "comment_point",
    "rcpt_got_it"
   ],
   "topic": "h0_qf_survival_kit"
  },
  {
   "id": "cs_frame_keep_talking",
   "move": "receipt",
   "name": "Keep them talking",
   "description": "The cheapest fuel in a conversation: small noises of amazement and one-word questions that ask for the rest of the story.",
   "hsk": 0,
   "evidence": [
    "Says 真的吗？ while the speaker is mid-story",
    "Pushes the story on with 后来呢？ or 为什么？",
    "Keeps the speaker going for three turns without understanding every word"
   ],
   "assessmentPrompt": "Tell the learner a short story with a pause in the middle. Do they fill the pause with a reaction or a tiny question?",
   "lines": [
    "f_really",
    "f_then",
    "f_why",
    "f_when"
   ],
   "topic": "h0_qf_keep_talking"
  },
  {
   "id": "cs_frame_ma",
   "move": "life",
   "name": "Yes or no with 吗",
   "description": "Turn any statement into a question by putting 吗 on the end. The simplest way to ask anything about someone.",
   "hsk": 1,
   "evidence": [
    "Asks 您有孩子吗？ with 吗 at the very end",
    "Never stacks 吗 on a question that already has a question word"
   ],
   "assessmentPrompt": "Ask the learner to find out whether you have grandchildren. Do they build the question with 吗 and nothing extra?",
   "lines": [
    "q_children",
    "q_grandkids",
    "f_miss_home",
    "f_hard"
   ],
   "topic": "h1_qf_ma"
  },
  {
   "id": "cs_frame_ne",
   "move": "chase",
   "name": "Bounce it back with 你呢",
   "description": "After answering a question, hand it straight back with 你呢？ so the conversation keeps two people in it.",
   "hsk": 1,
   "evidence": [
    "Answers a question, then asks 你呢？ without repeating the question",
    "Uses 你呢？ without adding 吗"
   ],
   "assessmentPrompt": "Ask the learner where they live. After they answer, do they bounce the question back to you?",
   "lines": [
    "f_and_you"
   ],
   "topic": "h1_qf_ne"
  },
  {
   "id": "cs_frame_shenme",
   "move": "name",
   "name": "Ask what with 什么",
   "description": "Put 什么 where the unknown thing goes. This is the frame behind every ask-the-name line.",
   "hsk": 1,
   "evidence": [
    "Asks 这个叫什么？ with 什么 in the object seat",
    "Keeps the statement word order when asking with 什么"
   ],
   "assessmentPrompt": "Point at a tool. Does the learner ask what it is called with 什么 in the right place?",
   "lines": [
    "atn_call",
    "comment_this_what",
    "atn_tool_name"
   ],
   "topic": "h1_qf_shenme"
  },
  {
   "id": "cs_frame_shei",
   "move": "life",
   "name": "Ask who with 谁",
   "description": "Ask about the people in someone’s life: who is in the photo, who just walked past.",
   "hsk": 1,
   "evidence": [
    "Asks 这是谁？ about a person in a photo",
    "Uses 谁 for people and 什么 for things"
   ],
   "assessmentPrompt": "Show the learner a family photo. Do they ask who someone is?",
   "lines": [
    "q_who_photo",
    "f_who_is"
   ],
   "topic": "h1_qf_shei"
  },
  {
   "id": "cs_frame_nar",
   "move": "life",
   "name": "Ask where with 哪儿",
   "description": "Ask where someone lives, grew up, or where exactly a thing happened.",
   "hsk": 1,
   "evidence": [
    "Asks 你现在住在哪儿？ with 哪儿 after the verb",
    "Narrows an answer with 具体在哪儿？"
   ],
   "assessmentPrompt": "Mention that you grew up somewhere else. Does the learner ask where?",
   "lines": [
    "q_live_where",
    "q_hometown",
    "f_where_exactly"
   ],
   "topic": "h1_qf_nar"
  },
  {
   "id": "cs_frame_jiduoshao",
   "move": "chase",
   "name": "Ask how many with 几 and 多少",
   "description": "Ask for a number: how many people in a family, how many of something there are.",
   "hsk": 1,
   "evidence": [
    "Asks 您家里有几个人？ with 几 for a small number",
    "Asks 有多少？ when the number could be large"
   ],
   "assessmentPrompt": "Mention your family. Does the learner ask how many people are in it?",
   "lines": [
    "q_family_size",
    "f_how_many"
   ],
   "topic": "h1_qf_jiduoshao"
  },
  {
   "id": "cs_frame_zenme",
   "move": "chase",
   "name": "Ask how with 怎么 and 怎么样",
   "description": "Ask how something is done or how something is. The frame behind both 这个中文怎么说？ and 最近怎么样？",
   "hsk": 1,
   "evidence": [
    "Asks 最近怎么样？ to a person they have met before",
    "Asks 您是怎么学的？ about a skill the speaker has"
   ],
   "assessmentPrompt": "Show the learner something you made. Do they ask how you learned to make it?",
   "lines": [
    "q_how_lately",
    "f_opinion",
    "f_how_learn"
   ],
   "topic": "h1_qf_zenme"
  },
  {
   "id": "cs_frame_haishi",
   "move": "repair",
   "name": "Offer a choice with 还是",
   "description": "Give two options and let the speaker pick one. A question anyone can answer, and a repair when you half understood.",
   "hsk": 1,
   "evidence": [
    "Asks 你喝茶还是咖啡？ with 还是 between the options",
    "Narrows a half-heard answer with 你是说这个，还是那个？"
   ],
   "assessmentPrompt": "Give the learner an answer they only half catch. Do they offer you two readings to choose from?",
   "lines": [
    "q_tea_or",
    "r_offer_two",
    "r_formal_or_casual"
   ],
   "topic": "h1_qf_haishi"
  },
  {
   "id": "cs_frame_a_not_a",
   "move": "repair",
   "name": "Ask directly with A-not-A",
   "description": "Say the verb yes then no, back to back, to ask a direct question or check your own output.",
   "hsk": 1,
   "evidence": [
    "Asks 我说得对不对？ after saying a new word",
    "Never adds 吗 to an A-not-A question"
   ],
   "assessmentPrompt": "Have the learner repeat a word you taught them. Do they ask you whether they said it right?",
   "lines": [
    "r_did_i_say_right",
    "r_check_my_writing",
    "q_here_ana",
    "r_simpler"
   ],
   "topic": "h1_qf_a_not_a"
  },
  {
   "id": "cs_frame_weishenme",
   "move": "chase",
   "name": "Ask why with 为什么",
   "description": "The one-word question that turns a fact into a reason, and a reason into a story.",
   "hsk": 2,
   "evidence": [
    "Asks 为什么？ after a surprising answer",
    "Follows the reason with a receipt before asking again"
   ],
   "assessmentPrompt": "Tell the learner you never eat a certain food. Do they ask why?",
   "lines": [
    "f_why"
   ],
   "topic": "h2_qf_weishenme"
  },
  {
   "id": "cs_frame_duojiu",
   "move": "life",
   "name": "Ask how long with 多久",
   "description": "Ask how long someone has lived somewhere or done something. Long answers come back to short questions.",
   "hsk": 2,
   "evidence": [
    "Asks 您在这儿住了多久？ to someone who lives nearby",
    "Follows a long answer with a question about back then"
   ],
   "assessmentPrompt": "Mention that you live in this neighborhood. Does the learner ask how long?",
   "lines": [
    "q_how_long"
   ],
   "topic": "h2_qf_duojiu"
  },
  {
   "id": "cs_frame_tag",
   "move": "repair",
   "name": "Soften and check",
   "description": "Put a small tag on the end of a statement to check that you understood or to invite a correction.",
   "hsk": 2,
   "evidence": [
    "Restates an answer and adds 对吗？ to check it",
    "Uses a check instead of saying they do not understand"
   ],
   "assessmentPrompt": "Explain a word to the learner. Do they restate it and ask you to confirm?",
   "lines": [
    "r_check_understood",
    "r_did_i_say_right"
   ],
   "topic": "h2_qf_tag"
  },
  {
   "id": "cs_frame_juede",
   "move": "chase",
   "name": "Ask for an opinion",
   "description": "Ask what the speaker thinks. Opinions take longer to give than facts, so they buy more listening.",
   "hsk": 3,
   "evidence": [
    "Asks 你觉得怎么样？ after the speaker describes something",
    "Asks what was most memorable with 你觉得最难忘的是什么？"
   ],
   "assessmentPrompt": "Describe a trip you took. Does the learner ask what you thought of it?",
   "lines": [
    "f_opinion",
    "f_proudest"
   ],
   "topic": "h3_qf_juede"
  },
  {
   "id": "cs_frame_guo",
   "move": "life",
   "name": "Ask about experience",
   "description": "Ask whether someone has ever done something. Everyone has an answer, which makes it a safe opener with anyone.",
   "hsk": 3,
   "evidence": [
    "Asks whether the speaker has ever been somewhere or eaten something",
    "Tells experience apart from a single past event"
   ],
   "assessmentPrompt": "Ask the learner to find out whether you have ever been to a certain city. Do they ask about experience rather than about one day?",
   "lines": [],
   "topic": "h3_qf_guo"
  },
  {
   "id": "cs_frame_followup",
   "move": "chase",
   "name": "Chase the story",
   "description": "Follow-up questions that turn a one-line answer into a story: how it turned out, an example, how they learned.",
   "hsk": 3,
   "evidence": [
    "Asks 后来怎么样了？ after the speaker finishes a story",
    "Asks 比如说呢？ when an answer is too general"
   ],
   "assessmentPrompt": "Tell the learner you used to work somewhere unusual. How many follow-up questions do they ask before changing the subject?",
   "lines": [
    "f_how_turned_out",
    "f_example",
    "f_how_learn"
   ],
   "topic": "h3_qf_followup"
  },
  {
   "id": "cs_open_ask_chinese",
   "move": "open",
   "name": "Confirm the language",
   "description": "Open with a question about the language itself. With someone who obviously speaks it, it is playful and almost always earns a smile.",
   "hsk": 3,
   "evidence": [
    "Opens with 您会说中文吗？ to a stranger speaking Chinese",
    "Continues in Chinese after the answer, with no English"
   ],
   "assessmentPrompt": "Pretend to be a stranger on a bench. Does the learner open by asking about the language and then keep going?",
   "lines": [
    "confirm_chinese"
   ],
   "topic": null
  },
  {
   "id": "cs_open_ask_permission",
   "move": "open",
   "name": "Ask to practice",
   "description": "Say you are learning and ask to talk. It explains every mistake that follows before you make it.",
   "hsk": 3,
   "evidence": [
    "Says 我在学中文，可以跟您说话吗？ within the first two turns",
    "Keeps talking in Chinese once the speaker says yes"
   ],
   "assessmentPrompt": "Does the learner tell a stranger they are learning and ask to talk, in one sentence?",
   "lines": [
    "confirm_learning"
   ],
   "topic": null
  },
  {
   "id": "cs_open_invite_correction",
   "move": "open",
   "name": "Invite correction",
   "description": "Ask the speaker to correct you. It turns a polite stranger into a teacher who tells you when you are wrong.",
   "hsk": 3,
   "evidence": [
    "Says 如果我说错了，请告诉我。 early in a conversation",
    "Thanks the speaker when they do correct a mistake"
   ],
   "assessmentPrompt": "Once the conversation is going, does the learner invite you to correct them?",
   "lines": [
    "r_stand_invite"
   ],
   "topic": null
  },
  {
   "id": "cs_open_comment_food",
   "move": "open",
   "name": "Comment on food",
   "description": "Say what you notice about the food in front of you. A comment on the real moment beats any memorized greeting.",
   "hsk": 2,
   "evidence": [
    "Opens with 这个真好吃！ while eating or at a stall",
    "Follows the comment with a question within one turn"
   ],
   "assessmentPrompt": "Put food in front of the learner. Do they comment on it, then ask something?",
   "lines": [
    "comment_food"
   ],
   "topic": null
  },
  {
   "id": "cs_open_comment_scene",
   "move": "open",
   "name": "Comment on the scene",
   "description": "Say what you notice about the weather or the street. Nothing clever, just the thing you both can see.",
   "hsk": 2,
   "evidence": [
    "Opens with a comment on the weather or the place",
    "Uses the comment to start a conversation, without asking for anything"
   ],
   "assessmentPrompt": "Stand somewhere outside with the learner. Do they open with a comment on what is around you?",
   "lines": [
    "comment_weather",
    "comment_place"
   ],
   "topic": null
  },
  {
   "id": "cs_open_compliment",
   "move": "open",
   "name": "Compliment what they are doing",
   "description": "Comment on exactly what the person is doing, such as the characters they are writing.",
   "hsk": 2,
   "evidence": [
    "Says 您写的字真漂亮！ about someone writing",
    "Picks the thing the person is doing over a generic greeting"
   ],
   "assessmentPrompt": "Do something with your hands in front of the learner. Do they comment on it?",
   "lines": [
    "comment_compliment"
   ],
   "topic": null
  },
  {
   "id": "cs_open_greet_regular",
   "move": "open",
   "name": "Greet someone you have met before",
   "description": "Pick up with a familiar face: ask how they have been, or whether they live nearby.",
   "hsk": 2,
   "evidence": [
    "Asks 最近怎么样？ to someone they have talked to before",
    "Asks 你是不是也住在这儿？ to a regular they see often"
   ],
   "assessmentPrompt": "Meet the learner a second time. Do they greet you as someone they know?",
   "lines": [
    "q_how_lately",
    "q_here_ana"
   ],
   "topic": null
  },
  {
   "id": "cs_point_this_that",
   "move": "point",
   "name": "Point with this and that",
   "description": "Refer to a thing you have no word for with 这个 or 那个 and a look. The entire capital requirement of the method.",
   "hsk": 1,
   "evidence": [
    "Says 你看那个！ to draw attention to an object",
    "Refers to a thing with 这个 without knowing its name"
   ],
   "assessmentPrompt": "Put an object the learner cannot name between you. Do they refer to it in Chinese without its name?",
   "lines": [
    "pt_look_at_that",
    "pt_this_thing_here",
    "pt_something_over_there"
   ],
   "topic": null
  },
  {
   "id": "cs_point_location",
   "move": "point",
   "name": "Point by location",
   "description": "Say where the thing is: on the table, in the bag, up above. The location stands in for the missing word.",
   "hsk": 1,
   "evidence": [
    "Says 桌子上有个东西。 to point at something on a table",
    "Uses 上面 or 里 to place a thing they cannot name"
   ],
   "assessmentPrompt": "Hide an object in a bag. Can the learner tell you there is something in it?",
   "lines": [
    "pt_something_on_table",
    "pt_something_in_bag",
    "pt_moving_up_there"
   ],
   "topic": null
  },
  {
   "id": "cs_point_senses",
   "move": "point",
   "name": "Point with the senses",
   "description": "Refer to a smell, a sound, a taste or a texture you cannot name. Some things cannot be pointed at with a finger.",
   "hsk": 3,
   "evidence": [
    "Says 我闻到一个味道。 about a smell they cannot name",
    "Says 我听到一个声音。 about a sound"
   ],
   "assessmentPrompt": "Play a sound the learner cannot name. Do they tell you they hear something?",
   "lines": [
    "pt_smell_something",
    "pt_hear_a_sound",
    "pt_taste_something",
    "pt_touch_something"
   ],
   "topic": null
  },
  {
   "id": "cs_point_feel",
   "move": "point",
   "name": "Invite them to feel it",
   "description": "Hand the thing over and say how it feels: soft, hot, heavy. The other person now describes it with you.",
   "hsk": 3,
   "evidence": [
    "Says 你摸摸 and describes how the thing feels",
    "Hands the object over instead of describing it at length"
   ],
   "assessmentPrompt": "Give the learner something soft or heavy. Do they hand it to you and say how it feels?",
   "lines": [
    "pt_feels_soft",
    "pt_feels_hot",
    "pt_feels_heavy"
   ],
   "topic": null
  },
  {
   "id": "cs_point_motion",
   "move": "point",
   "name": "Point at something moving",
   "description": "Point at a thing by what it is doing: spinning, glowing, falling, getting louder.",
   "hsk": 3,
   "evidence": [
    "Says 你看，那个东西在转。 about something moving",
    "Uses 在 to describe what an unnamed thing is doing"
   ],
   "assessmentPrompt": "Show the learner something spinning or glowing. Can they draw your attention to it?",
   "lines": [
    "pt_spinning",
    "pt_something_shiny",
    "pt_something_dropped",
    "pt_getting_closer",
    "pt_that_sound_again"
   ],
   "topic": null
  },
  {
   "id": "cs_point_person_object",
   "move": "point",
   "name": "Point at what someone has",
   "description": "Point at a thing by the person holding, wearing or building it.",
   "hsk": 3,
   "evidence": [
    "Says 你看，那个人手里拿着一个东西。 about an object in someone’s hand",
    "Identifies an unnamed object through the person who has it"
   ],
   "assessmentPrompt": "Hold something the learner cannot name. Can they point it out through you?",
   "lines": [
    "pt_someone_carrying",
    "pt_something_wearing",
    "pt_building_something"
   ],
   "topic": null
  },
  {
   "id": "cs_point_person_action",
   "move": "point",
   "name": "Point at what people are doing",
   "description": "Point at an action or an expression you have no word for: a strange movement, a queue, a face.",
   "hsk": 2,
   "evidence": [
    "Says 你看，那个人在做一个很奇怪的动作。 about a movement",
    "Points at a group activity with 那些人在一起做一件事"
   ],
   "assessmentPrompt": "Do an unusual movement. Can the learner point it out and ask about it?",
   "lines": [
    "pt_doing_something",
    "pt_repeated_gesture",
    "pt_group_doing",
    "pt_line_of_people",
    "pt_face_expression"
   ],
   "topic": null
  },
  {
   "id": "cs_point_compare",
   "move": "point",
   "name": "Point by comparison",
   "description": "Point at a thing by comparing it with another one, or with how the place used to be.",
   "hsk": 1,
   "evidence": [
    "Says 你看，这个比那个大。 about two objects",
    "Says 这儿跟以前不一样了 about a place that changed"
   ],
   "assessmentPrompt": "Put two similar objects side by side. Can the learner point at one by comparing it with the other?",
   "lines": [
    "pt_this_bigger",
    "pt_something_changed",
    "pt_used_to_be_here"
   ],
   "topic": null
  },
  {
   "id": "cs_point_detail",
   "move": "point",
   "name": "Point at a detail",
   "description": "Point at a small part, a pattern, a shadow, or a piece that is missing.",
   "hsk": 1,
   "evidence": [
    "Says 你看，这个图案很特别。 about a pattern",
    "Points at a small or missing part of a larger thing"
   ],
   "assessmentPrompt": "Show the learner a patterned cloth. Can they point at the pattern?",
   "lines": [
    "pt_something_small",
    "pt_pattern_design",
    "pt_missing_piece",
    "pt_shadow",
    "pt_so_many_things"
   ],
   "topic": null
  },
  {
   "id": "cs_point_writing",
   "move": "point",
   "name": "Point at writing",
   "description": "Point at a sign, a number, or a rare character. Writing is everywhere and every piece of it is a question.",
   "hsk": 1,
   "evidence": [
    "Says 你看，这个字很少见。 about a character they do not know",
    "Points at a number on a sign"
   ],
   "assessmentPrompt": "Show the learner a sign with a rare character. Do they point it out?",
   "lines": [
    "pt_number_on_sign",
    "pt_unfamiliar_character"
   ],
   "topic": null
  },
  {
   "id": "cs_name_called",
   "move": "name",
   "name": "Ask what it is called",
   "description": "Ask the name of the thing in front of you or over there. The core move: it converts a thing into a word.",
   "hsk": 1,
   "evidence": [
    "Asks 这个叫什么？ about an object without English",
    "Asks 那个用中文怎么说？ about something at a distance",
    "Repeats the new word back after hearing it"
   ],
   "assessmentPrompt": "Point at an object the learner cannot name. Do they ask what it is called and repeat the answer?",
   "lines": [
    "atn_call",
    "atn_that_say",
    "atn_over_there"
   ],
   "topic": null
  },
  {
   "id": "cs_name_kind",
   "move": "name",
   "name": "Ask which kind",
   "description": "Ask which kind of thing it is. 树 is the name, and the kind is the next word down.",
   "hsk": 3,
   "evidence": [
    "Asks 那是什么树？ after learning the general name",
    "Asks 这种花叫什么名字？ about a specific kind"
   ],
   "assessmentPrompt": "After telling the learner a general name, does the learner ask which kind it is?",
   "lines": [
    "q_what_kind",
    "atn_flower_name",
    "atn_tree_name"
   ],
   "topic": null
  },
  {
   "id": "cs_name_word_above",
   "move": "name",
   "name": "Ask the word above",
   "description": "Ask what a lot of them together is called. One object becomes a word family.",
   "hsk": 1,
   "evidence": [
    "Asks 很多树在一起叫什么？ after learning 树",
    "Builds a group word from a single item word"
   ],
   "assessmentPrompt": "Teach the learner the word for one thing. Do they ask what many of them together are called?",
   "lines": [
    "q_many_together"
   ],
   "topic": null
  },
  {
   "id": "cs_name_part_inside",
   "move": "name",
   "name": "Ask the part inside",
   "description": "Ask what one part of the thing is called, or what is inside it.",
   "hsk": 1,
   "evidence": [
    "Asks 这个部分叫什么？ while pointing at a part",
    "Asks 里面有什么？ about a dish or a container"
   ],
   "assessmentPrompt": "Show the learner an object with obvious parts. Do they ask the name of one part?",
   "lines": [
    "q_this_part",
    "q_inside_what"
   ],
   "topic": null
  },
  {
   "id": "cs_name_food",
   "move": "name",
   "name": "Name food and drink",
   "description": "Ask the name of a dish, a seasoning, an ingredient or a tea.",
   "hsk": 2,
   "evidence": [
    "Asks 这道菜叫什么？ at a restaurant",
    "Asks 这是什么调料？ about a seasoning"
   ],
   "assessmentPrompt": "Serve the learner a dish. How many of its names and ingredients do they ask for?",
   "lines": [
    "atn_dish_name",
    "atn_seasoning",
    "atn_ingredient",
    "atn_tea_name"
   ],
   "topic": null
  },
  {
   "id": "cs_name_animals",
   "move": "name",
   "name": "Name animals",
   "description": "Ask the name of a bird or a bug. Older speakers often know these and enjoy telling.",
   "hsk": 2,
   "evidence": [
    "Asks 那只鸟叫什么名字？ about a bird in view",
    "Uses the right measure word for the animal"
   ],
   "assessmentPrompt": "Point at a bird. Does the learner ask its name?",
   "lines": [
    "atn_bird_name",
    "atn_insect_name"
   ],
   "topic": null
  },
  {
   "id": "cs_name_objects",
   "move": "name",
   "name": "Name objects",
   "description": "Ask the name of a tool, a piece of clothing, an instrument, a vehicle, an app or a brand.",
   "hsk": 1,
   "evidence": [
    "Asks 这个工具叫什么？ about a tool",
    "Asks 这是什么牌子？ about a product"
   ],
   "assessmentPrompt": "Hand the learner an unfamiliar tool. Do they ask what it is called?",
   "lines": [
    "atn_tool_name",
    "atn_clothing_name",
    "atn_instrument_name",
    "atn_vehicle_name",
    "atn_app_name",
    "atn_brand_name"
   ],
   "topic": null
  },
  {
   "id": "cs_name_places",
   "move": "name",
   "name": "Name places",
   "description": "Ask the name of a place, a street or a building.",
   "hsk": 3,
   "evidence": [
    "Asks 这条街叫什么名字？ on a street",
    "Asks 这个地方叫什么名字？ about where they are"
   ],
   "assessmentPrompt": "Walk the learner past a landmark. Do they ask its name?",
   "lines": [
    "atn_place_name",
    "atn_street_name",
    "atn_building_name"
   ],
   "topic": null
  },
  {
   "id": "cs_name_culture",
   "move": "name",
   "name": "Name songs, games and festivals",
   "description": "Ask the name of a song, a game, a dance, a sport or a festival. Each one comes with a story.",
   "hsk": 2,
   "evidence": [
    "Asks 这首歌叫什么名字？ about music playing",
    "Asks 你们跳的是什么舞？ to a group dancing"
   ],
   "assessmentPrompt": "Play a song. Does the learner ask what it is called?",
   "lines": [
    "atn_song_name",
    "atn_game_name",
    "atn_dance_name",
    "atn_sport_name",
    "atn_festival_name"
   ],
   "topic": null
  },
  {
   "id": "cs_name_qualities",
   "move": "name",
   "name": "Name colors, shapes and sounds",
   "description": "Ask the word for a color, a shape, a pattern, a kind of weather or a sound.",
   "hsk": 2,
   "evidence": [
    "Asks 这个颜色叫什么？ about an unusual color",
    "Asks 这个声音怎么形容？ about a sound"
   ],
   "assessmentPrompt": "Show the learner an unusual color. Do they ask its name?",
   "lines": [
    "atn_color_name",
    "atn_shape_name",
    "atn_pattern_named",
    "atn_weather_name",
    "atn_sound_describe"
   ],
   "topic": null
  },
  {
   "id": "cs_name_how_made",
   "move": "name",
   "name": "Ask how it is made",
   "description": "Ask what a thing is made of and how it was made.",
   "hsk": 3,
   "evidence": [
    "Asks 这是什么材料做的？ about an object",
    "Asks 这是用什么方法做的？ about food or a craft"
   ],
   "assessmentPrompt": "Show the learner a handmade object. Do they ask what it is made of?",
   "lines": [
    "atn_material",
    "atn_cooking_method"
   ],
   "topic": null
  },
  {
   "id": "cs_name_actions_jobs",
   "move": "name",
   "name": "Name actions and jobs",
   "description": "Ask the word for a movement someone is making, or for the job they are doing.",
   "hsk": 1,
   "evidence": [
    "Asks 这个动作叫什么？ about a movement",
    "Asks 这个工作叫什么？ about someone at work"
   ],
   "assessmentPrompt": "Do a movement. Does the learner ask what it is called?",
   "lines": [
    "atn_move_name",
    "atn_job_title"
   ],
   "topic": null
  },
  {
   "id": "cs_name_people",
   "move": "name",
   "name": "Name people and relatives",
   "description": "Ask who someone is and what relation they are to the speaker.",
   "hsk": 1,
   "evidence": [
    "Asks 他是您的什么亲戚？ about someone the speaker mentions",
    "Asks who is in a photo"
   ],
   "assessmentPrompt": "Mention a relative. Does the learner ask what relation they are?",
   "lines": [
    "q_who_photo",
    "atn_kin_term"
   ],
   "topic": null
  },
  {
   "id": "cs_name_meaning",
   "move": "name",
   "name": "Ask what a name means",
   "description": "Ask what a name means. Names in Chinese carry meaning, and the answer teaches a character.",
   "hsk": 2,
   "evidence": [
    "Asks 这个名字是什么意思？ after hearing a name",
    "Picks up the character the answer explains"
   ],
   "assessmentPrompt": "Tell the learner the name of a bird. Do they ask what the name means?",
   "lines": [
    "atn_meaning_of_name"
   ],
   "topic": null
  },
  {
   "id": "cs_name_read_char",
   "move": "name",
   "name": "Ask how a character is read",
   "description": "Point at a written character and ask how it is pronounced.",
   "hsk": 5,
   "evidence": [
    "Asks 这个字怎么念？ while pointing at writing",
    "Reads the character back with the tone they heard"
   ],
   "assessmentPrompt": "Show the learner a character they do not know. Do they ask how to read it?",
   "lines": [
    "atn_read_char"
   ],
   "topic": null
  },
  {
   "id": "cs_name_measure",
   "move": "name",
   "name": "Ask the measure word",
   "description": "Ask which measure word goes with a noun, or what unit it is sold by.",
   "hsk": 4,
   "evidence": [
    "Asks 这个用什么量词？ after learning a new noun",
    "Asks 这个是按什么单位卖的？ at a market"
   ],
   "assessmentPrompt": "Teach the learner a new noun. Do they ask its measure word?",
   "lines": [
    "atn_measure_word",
    "atn_unit_sale"
   ],
   "topic": null
  },
  {
   "id": "cs_life_hometown",
   "move": "life",
   "name": "Ask where they grew up",
   "description": "Ask where the person grew up or where their hometown is. Older speakers have decades of story behind the answer.",
   "hsk": 2,
   "evidence": [
    "Asks 您是在哪儿长大的？ to an older speaker",
    "Asks 您老家是哪里的？ with the polite 您"
   ],
   "assessmentPrompt": "Does the learner ask an older stranger where they grew up, using 您?",
   "lines": [
    "q_hometown",
    "q_laojia"
   ],
   "topic": null
  },
  {
   "id": "cs_life_where_live",
   "move": "life",
   "name": "Ask where they live",
   "description": "Ask where someone lives now. The answer leads to how long, and to the neighborhood.",
   "hsk": 1,
   "evidence": [
    "Asks 你现在住在哪儿？",
    "Follows the answer with a question about the place"
   ],
   "assessmentPrompt": "Tell the learner you live nearby. Do they ask where?",
   "lines": [
    "q_live_where"
   ],
   "topic": null
  },
  {
   "id": "cs_life_family",
   "move": "life",
   "name": "Ask about family",
   "description": "Ask about the family: how many people, children, grandchildren.",
   "hsk": 2,
   "evidence": [
    "Asks 您家里有几个人？",
    "Asks 您有孙子孙女吗？ to an older speaker"
   ],
   "assessmentPrompt": "Does the learner ask an older speaker about their grandchildren?",
   "lines": [
    "q_family_size",
    "q_children",
    "q_grandkids"
   ],
   "topic": null
  },
  {
   "id": "cs_life_work",
   "move": "life",
   "name": "Ask about their work",
   "description": "Ask what the person did for work. A whole career is one question away.",
   "hsk": 2,
   "evidence": [
    "Asks 您以前做什么工作？ to a retired speaker",
    "Follows the answer with at least one more question about the work"
   ],
   "assessmentPrompt": "Does the learner ask what you used to do for work?",
   "lines": [
    "q_work"
   ],
   "topic": null
  },
  {
   "id": "cs_life_likes",
   "move": "life",
   "name": "Ask what they like",
   "description": "Ask what the person likes to do, or whether they like the thing in front of you.",
   "hsk": 1,
   "evidence": [
    "Asks 你喜欢做什么？",
    "Asks 您喜欢这个吗？ about the thing you just commented on"
   ],
   "assessmentPrompt": "Does the learner turn a comment about an object into a question about what you like?",
   "lines": [
    "q_do_what",
    "comment_like_this"
   ],
   "topic": null
  },
  {
   "id": "cs_life_choice",
   "move": "life",
   "name": "Offer them a choice",
   "description": "Ask an easy either-or question about the person. Nobody can answer it wrong.",
   "hsk": 2,
   "evidence": [
    "Asks 你喝茶还是咖啡？",
    "Uses the choice to start talking, without quizzing the speaker"
   ],
   "assessmentPrompt": "Does the learner ask you to choose between two things?",
   "lines": [
    "q_tea_or"
   ],
   "topic": null
  },
  {
   "id": "cs_life_favorite",
   "move": "life",
   "name": "Ask which kind they like best",
   "description": "Once you have a few kinds of a thing, ask which one the person likes best. The object becomes about them.",
   "hsk": 1,
   "evidence": [
    "Asks 你最喜欢哪一种？ after learning several kinds",
    "Uses the answer to ask a further question about the person"
   ],
   "assessmentPrompt": "After naming two or three kinds of something, does the learner ask which one you like best?",
   "lines": [
    "q_which_kind_best"
   ],
   "topic": null
  },
  {
   "id": "cs_life_hometown_bridge",
   "move": "life",
   "name": "Bridge to their hometown",
   "description": "Ask whether the thing exists in their hometown too, or what is good to eat there. The object becomes a story about home.",
   "hsk": 1,
   "evidence": [
    "Asks 你老家也有吗？ about the thing you just named",
    "Asks 您家乡什么东西最好吃？"
   ],
   "assessmentPrompt": "After talking about a tree or a dish, does the learner connect it to your hometown?",
   "lines": [
    "q_hometown_too",
    "q_best_food_home",
    "f_food_from_there"
   ],
   "topic": null
  },
  {
   "id": "cs_receipt_got_it",
   "move": "receipt",
   "name": "Say that you understood",
   "description": "Tell the speaker it landed. A learner who says nothing while processing looks lost.",
   "hsk": 2,
   "evidence": [
    "Says 明白了。 after an explanation",
    "Says 我懂你的意思。 instead of staying silent"
   ],
   "assessmentPrompt": "Explain something to the learner. Do they tell you it landed?",
   "lines": [
    "rcpt_got_it",
    "rcpt_i_get_it",
    "rcpt_understand_meaning"
   ],
   "topic": null
  },
  {
   "id": "cs_receipt_oh_i_see",
   "move": "receipt",
   "name": "Say oh, I see",
   "description": "Mark the moment something new makes sense.",
   "hsk": 3,
   "evidence": [
    "Says 原来如此。 when an explanation clicks",
    "Says 难怪！ when a fact explains something they noticed"
   ],
   "assessmentPrompt": "Explain why something is the way it is. Does the learner react as it clicks?",
   "lines": [
    "rcpt_i_see",
    "rcpt_makes_sense",
    "rcpt_no_wonder",
    "rcpt_is_that_so"
   ],
   "topic": null
  },
  {
   "id": "cs_receipt_really",
   "move": "receipt",
   "name": "React with surprise",
   "description": "React to a surprising answer. Amazement begs for the rest of the story.",
   "hsk": 2,
   "evidence": [
    "Says 真的吗？ or 真的假的！ at a surprising fact",
    "Says 我还真不知道。 about something new"
   ],
   "assessmentPrompt": "Tell the learner a surprising fact. Do they react in Chinese?",
   "lines": [
    "f_really",
    "rcpt_no_way",
    "rcpt_oh_my",
    "rcpt_playful_disbelief",
    "rcpt_oh_i_didnt_know",
    "rcpt_more_complex"
   ],
   "topic": null
  },
  {
   "id": "cs_receipt_admire",
   "move": "receipt",
   "name": "Admire what they did",
   "description": "Admire a skill or a choice the speaker describes. People keep talking to someone impressed by them.",
   "hsk": 2,
   "evidence": [
    "Says 太厉害了！ about a skill",
    "Says 真是练出来的。 about something that took years"
   ],
   "assessmentPrompt": "Describe something you are good at. Does the learner admire it?",
   "lines": [
    "rcpt_impressive",
    "rcpt_thats_something",
    "rcpt_brave",
    "rcpt_smart",
    "rcpt_admire_patience",
    "rcpt_years_of_practice"
   ],
   "topic": null
  },
  {
   "id": "cs_receipt_sympathy",
   "move": "receipt",
   "name": "Show sympathy",
   "description": "React to a hard part of the story. It shows you followed more than the words.",
   "hsk": 2,
   "evidence": [
    "Says 真辛苦。 about hard work",
    "Says 那就好。 when a hard story ends well"
   ],
   "assessmentPrompt": "Tell the learner about a hard time. Do they respond with sympathy?",
   "lines": [
    "rcpt_poor_thing",
    "rcpt_must_be_hard",
    "rcpt_pity_missed",
    "rcpt_relief"
   ],
   "topic": null
  },
  {
   "id": "cs_receipt_agree",
   "move": "receipt",
   "name": "Agree",
   "description": "Agree with what the speaker said, or say it is the same for you.",
   "hsk": 2,
   "evidence": [
    "Says 有道理。 to an opinion",
    "Says 我也是。 when it is true for them too"
   ],
   "assessmentPrompt": "Give the learner an opinion. Do they agree out loud?",
   "lines": [
    "rcpt_makes_sense_reason",
    "rcpt_well_said",
    "rcpt_quiet_agree",
    "rcpt_can_relate"
   ],
   "topic": null
  },
  {
   "id": "cs_receipt_enjoy",
   "move": "receipt",
   "name": "Enjoy the story",
   "description": "Say the story is interesting, funny, a coincidence, or that it made you hungry.",
   "hsk": 1,
   "evidence": [
    "Says 真有意思。 during a story",
    "Says 听你这么一说，我都饿了。 after a description of food"
   ],
   "assessmentPrompt": "Tell the learner about a dish from your hometown. Do they react with enjoyment?",
   "lines": [
    "rcpt_interesting",
    "rcpt_funny",
    "rcpt_thats_great",
    "rcpt_what_a_coincidence",
    "rcpt_mouth_watering"
   ],
   "topic": null
  },
  {
   "id": "cs_receipt_personal",
   "move": "receipt",
   "name": "Share how it made you feel",
   "description": "Say how the story touched you. It turns an interview into a conversation between two people.",
   "hsk": 2,
   "evidence": [
    "Says 我很感动。 after a moving story",
    "Says 让我也想起小时候了。 about a childhood memory"
   ],
   "assessmentPrompt": "Tell the learner about your childhood. Do they say how it made them feel?",
   "lines": [
    "rcpt_touched",
    "rcpt_envy",
    "rcpt_nostalgia"
   ],
   "topic": null
  },
  {
   "id": "cs_receipt_keep_going",
   "move": "receipt",
   "name": "Ask them to go on",
   "description": "Tell the speaker to keep going and thank them for telling you.",
   "hsk": 2,
   "evidence": [
    "Says 接着说，我在听。 when the speaker pauses",
    "Says 谢谢你告诉我。 at the end of a story"
   ],
   "assessmentPrompt": "Pause in the middle of a story. Does the learner ask you to go on?",
   "lines": [
    "rcpt_keep_going",
    "rcpt_gratitude_told"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_meaning",
   "move": "repair",
   "name": "Ask what it means",
   "description": "Ask what a word or a whole answer means, in Chinese, and let the speaker explain it in other words.",
   "hsk": 2,
   "evidence": [
    "Asks 什么意思？ about one word they missed",
    "Follows the explanation the speaker gives in Chinese"
   ],
   "assessmentPrompt": "Use a word the learner does not know. Do they ask what it means and follow the explanation?",
   "lines": [
    "r_what_mean",
    "r_is_this_meaning"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_isolate",
   "move": "repair",
   "name": "Isolate the word you missed",
   "description": "Ask for just the last word, or just the part you missed. A repair must produce something, never just rewind the tape.",
   "hsk": 1,
   "evidence": [
    "Asks 你刚才说的最后一个词是什么？ after a long answer",
    "Asks for one part of an answer instead of the whole thing again"
   ],
   "assessmentPrompt": "Give the learner a long answer with one new word at the end. Do they pull out that word?",
   "lines": [
    "r_last_word",
    "r_slow_this_part",
    "r_one_word"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_write",
   "move": "repair",
   "name": "Ask them to write it",
   "description": "Ask the speaker to write the word, type it, or give its pinyin. Writing pins down a word you heard once.",
   "hsk": 1,
   "evidence": [
    "Asks 可以写一下吗？ for a new word",
    "Asks 拼音怎么写？ when they cannot read the character"
   ],
   "assessmentPrompt": "Say a new word. Does the learner ask you to write it?",
   "lines": [
    "r_write_down",
    "r_type_it",
    "r_spell_pinyin",
    "r_digits"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_tone",
   "move": "repair",
   "name": "Ask the tone",
   "description": "Ask which tone a syllable is, or how a character is read in this sentence.",
   "hsk": 1,
   "evidence": [
    "Asks 是第几声？ about a new word",
    "Asks 这个字在这句话里怎么念？ about a character with more than one reading"
   ],
   "assessmentPrompt": "Say a new word. Does the learner ask its tone?",
   "lines": [
    "r_tone",
    "r_polyphonic_reading"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_which_char",
   "move": "repair",
   "name": "Check which character",
   "description": "Check that a written character is the one the speaker said, or ask which characters are in a name.",
   "hsk": 1,
   "evidence": [
    "Asks 你说的是这个字吗？ while pointing at writing",
    "Asks 您的名字是哪几个字？ after an introduction"
   ],
   "assessmentPrompt": "Tell the learner your name. Do they ask which characters it is written with?",
   "lines": [
    "r_confirm_char",
    "r_name_chars"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_own_output",
   "move": "repair",
   "name": "Check your own output",
   "description": "Ask whether you said or wrote it right. It invites a correction you can use.",
   "hsk": 1,
   "evidence": [
    "Asks 我说得对不对？ after saying a new word",
    "Asks 我这样写，对不对？ after writing it"
   ],
   "assessmentPrompt": "Have the learner say a new word back. Do they ask you whether it was right?",
   "lines": [
    "r_did_i_say_right",
    "r_check_my_writing"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_check_understanding",
   "move": "repair",
   "name": "Check your understanding",
   "description": "Restate what you think the speaker meant and ask if that is right.",
   "hsk": 3,
   "evidence": [
    "Says 我这样理解，对吗？ after restating an answer",
    "Restates in simpler words before asking"
   ],
   "assessmentPrompt": "Explain a word. Does the learner restate it and check?",
   "lines": [
    "r_check_understood",
    "r_is_this_meaning"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_narrow",
   "move": "repair",
   "name": "Narrow it down",
   "description": "Offer two readings, or ask for a plain yes or no, when you half understood.",
   "hsk": 2,
   "evidence": [
    "Asks 你是说这个，还是那个？ with two options",
    "Asks 简单说，是还是不是？ when an answer is too long"
   ],
   "assessmentPrompt": "Give the learner an ambiguous answer. Do they narrow it down?",
   "lines": [
    "r_offer_two",
    "r_yes_or_no"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_simpler",
   "move": "repair",
   "name": "Ask for simpler words",
   "description": "Ask for a simpler way to say it or a different word. The speaker explains in words you have.",
   "hsk": 3,
   "evidence": [
    "Asks 有没有更简单的说法？ after an unknown word",
    "Asks 换个词说，可以吗？"
   ],
   "assessmentPrompt": "Use a hard word. Does the learner ask for an easier way to say it?",
   "lines": [
    "r_simpler",
    "r_another_word"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_show",
   "move": "repair",
   "name": "Ask them to show it",
   "description": "Ask the speaker to point at it or act it out, or offer to answer by nodding.",
   "hsk": 4,
   "evidence": [
    "Asks 能指给我看吗？ about a thing mentioned",
    "Asks 可以比划一下吗？ about an action"
   ],
   "assessmentPrompt": "Mention an object in the room by name. Does the learner ask you to point at it?",
   "lines": [
    "r_show_me",
    "r_gesture",
    "r_nod_shake"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_example",
   "move": "repair",
   "name": "Ask for an example",
   "description": "Ask for an example or for something similar. A word you can place next to another is a word you keep.",
   "hsk": 3,
   "evidence": [
    "Asks 能举个例子吗？ about a new word",
    "Asks 这个跟什么差不多？"
   ],
   "assessmentPrompt": "Teach the learner an abstract word. Do they ask for an example?",
   "lines": [
    "r_example",
    "r_similar_to"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_gist",
   "move": "repair",
   "name": "Ask for the main point",
   "description": "Ask what the main point is, ask for a full sentence, or check whether the speaker has finished.",
   "hsk": 2,
   "evidence": [
    "Asks 重点是什么？ after a long answer",
    "Asks 你说完了吗？ before replying"
   ],
   "assessmentPrompt": "Give the learner a long, winding answer. Do they ask for the main point?",
   "lines": [
    "r_gist",
    "r_full_sentence",
    "r_finished_talking"
   ],
   "topic": null
  },
  {
   "id": "cs_repair_word_shape",
   "move": "repair",
   "name": "Check the shape of a word",
   "description": "Ask whether two characters are one word or two, or whether a phrase is fixed.",
   "hsk": 3,
   "evidence": [
    "Asks 这两个字是一个词，还是两个词？",
    "Asks 这是固定说法吗？ about a phrase"
   ],
   "assessmentPrompt": "Use a set phrase. Does the learner ask whether it is a fixed expression?",
   "lines": [
    "r_word_or_two",
    "r_set_phrase"
   ],
   "topic": null
  },
  {
   "id": "cs_chase_then",
   "move": "chase",
   "name": "Ask what happened next",
   "description": "Ask what happened next. Move 5 is the multiplier: it buys a story instead of a word.",
   "hsk": 1,
   "evidence": [
    "Asks 后来呢？ when the speaker pauses",
    "Asks 那他后来呢？ about a person in the story"
   ],
   "assessmentPrompt": "Stop a story halfway. Does the learner ask what happened next?",
   "lines": [
    "f_then",
    "f_and_then2",
    "f_how_turned_out",
    "f_what_about_him"
   ],
   "topic": null
  },
  {
   "id": "cs_chase_why",
   "move": "chase",
   "name": "Ask why",
   "description": "Ask for the reason behind a fact. The reason is usually a story.",
   "hsk": 2,
   "evidence": [
    "Asks 为什么？ after a surprising choice",
    "Lets the speaker finish the reason before asking again"
   ],
   "assessmentPrompt": "Tell the learner something you did that seems odd. Do they ask why?",
   "lines": [
    "f_why"
   ],
   "topic": null
  },
  {
   "id": "cs_chase_opinion",
   "move": "chase",
   "name": "Ask what they think",
   "description": "Ask for the speaker’s view, or the part they remember most.",
   "hsk": 2,
   "evidence": [
    "Asks 你觉得怎么样？",
    "Asks 你觉得最难忘的是什么？"
   ],
   "assessmentPrompt": "Tell the learner about an event. Do they ask what you thought of it?",
   "lines": [
    "f_opinion",
    "f_proudest"
   ],
   "topic": null
  },
  {
   "id": "cs_chase_back_then",
   "move": "chase",
   "name": "Ask about back then",
   "description": "Ask what it was like back then and how it compares to now. Older speakers light up here.",
   "hsk": 1,
   "evidence": [
    "Asks 那个时候是什么样子？",
    "Asks 跟以前比，现在怎么样？"
   ],
   "assessmentPrompt": "Mention how a place used to be. Does the learner ask what it was like?",
   "lines": [
    "f_back_then",
    "f_still_now",
    "f_still_remember",
    "f_compare_now"
   ],
   "topic": null
  },
  {
   "id": "cs_chase_details",
   "move": "chase",
   "name": "Ask for details",
   "description": "Ask when, where exactly, how many, which one, or what exactly happened.",
   "hsk": 1,
   "evidence": [
    "Asks 具体是怎么回事？ about an event",
    "Asks 什么时候？ or 具体在哪儿？ to pin down a detail"
   ],
   "assessmentPrompt": "Tell the learner something happened to you once. Do they ask for the details?",
   "lines": [
    "f_what_happened_exactly",
    "f_when",
    "f_where_exactly",
    "f_how_many",
    "f_which_one"
   ],
   "topic": null
  },
  {
   "id": "cs_chase_who",
   "move": "chase",
   "name": "Ask who that was",
   "description": "Ask about a person who appears in the story.",
   "hsk": 5,
   "evidence": [
    "Asks 哎，那是谁？ when a new person is mentioned",
    "Follows that person through the rest of the story"
   ],
   "assessmentPrompt": "Mention a person by name in a story. Does the learner ask who that is?",
   "lines": [
    "f_who_is"
   ],
   "topic": null
  },
  {
   "id": "cs_chase_more",
   "move": "chase",
   "name": "Ask for more",
   "description": "Ask the speaker to say more, give an example, or name other things like it.",
   "hsk": 2,
   "evidence": [
    "Asks 能多讲一点吗？ after a short answer",
    "Asks 还有别的吗？ after a list"
   ],
   "assessmentPrompt": "Give the learner a one-line answer. Do they ask for more?",
   "lines": [
    "f_tell_more",
    "f_more_else",
    "f_example"
   ],
   "topic": null
  },
  {
   "id": "cs_chase_feelings",
   "move": "chase",
   "name": "Ask how it felt",
   "description": "Ask whether it was hard, whether they miss home, whether they regret it, whether others feel the same.",
   "hsk": 2,
   "evidence": [
    "Asks 难吗？ about something the speaker learned",
    "Asks 您想家吗？ to someone far from home"
   ],
   "assessmentPrompt": "Tell the learner you moved far from home. Do they ask how it felt?",
   "lines": [
    "f_hard",
    "f_miss_home",
    "f_regret",
    "f_anyone_else"
   ],
   "topic": null
  },
  {
   "id": "cs_chase_learn",
   "move": "chase",
   "name": "Ask them to teach you",
   "description": "Ask how they learned it, ask them to teach you, or ask for advice. The speaker becomes the teacher.",
   "hsk": 3,
   "evidence": [
    "Asks 您是怎么学的？ about a skill",
    "Asks 您能教教我吗？"
   ],
   "assessmentPrompt": "Show the learner a skill. Do they ask how you learned it and whether you could teach them?",
   "lines": [
    "f_how_learn",
    "f_teach_me",
    "f_advice"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_difference",
   "move": "meta",
   "name": "Ask the difference between two words",
   "description": "Ask how two words you already know differ. Past HSK 3 the gaps are distinctions between words you already have.",
   "hsk": 3,
   "evidence": [
    "Asks 这两个词有什么区别？ about two near synonyms",
    "Restates the difference and checks it"
   ],
   "assessmentPrompt": "Use two similar words. Does the learner ask how they differ?",
   "lines": [
    "m_difference"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_register",
   "move": "meta",
   "name": "Ask written or spoken",
   "description": "Ask whether a word is formal, or written rather than spoken.",
   "hsk": 4,
   "evidence": [
    "Asks 这是书面语还是口语？ about a word",
    "Asks 这个说法正式吗？"
   ],
   "assessmentPrompt": "Use a formal word. Does the learner ask whether it is written or spoken?",
   "lines": [
    "m_register",
    "m_formal"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_spoken",
   "move": "meta",
   "name": "Ask how people say it out loud",
   "description": "Ask what people usually say in speech.",
   "hsk": 4,
   "evidence": [
    "Asks 口语里一般怎么说？ about a written word",
    "Uses the spoken form in the next turn"
   ],
   "assessmentPrompt": "Use a bookish word. Does the learner ask what people actually say?",
   "lines": [
    "m_spoken"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_who_says",
   "move": "meta",
   "name": "Ask who says it",
   "description": "Ask whether young people say it too.",
   "hsk": 5,
   "evidence": [
    "Asks 年轻人也这么说吗？ about an expression",
    "Asks what young people say instead when the answer is no"
   ],
   "assessmentPrompt": "Use an old-fashioned saying. Does the learner ask whether young people say it?",
   "lines": [
    "m_young"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_politeness",
   "move": "meta",
   "name": "Ask whether it is polite",
   "description": "Ask whether saying it that way would be rude, and to whom.",
   "hsk": 4,
   "evidence": [
    "Asks 这么说会不会不礼貌？",
    "Asks about the person it would be rude to"
   ],
   "assessmentPrompt": "Teach the learner a blunt phrase. Do they ask whether it is polite?",
   "lines": [
    "m_rude",
    "r_is_it_rude"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_natural",
   "move": "meta",
   "name": "Ask for the natural way",
   "description": "Ask whether there is a more natural way to say it.",
   "hsk": 4,
   "evidence": [
    "Asks 有更地道的说法吗？ after saying something correct but stiff",
    "Says the natural version back"
   ],
   "assessmentPrompt": "Let the learner say something stiff but correct. Do they ask for a more natural way?",
   "lines": [
    "m_natural"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_saying",
   "move": "meta",
   "name": "Ask what a saying means",
   "description": "Ask what an expression means, and whether the meaning is literal.",
   "hsk": 6,
   "evidence": [
    "Asks 这个说法是什么意思？ about a saying",
    "Asks 这是字面意思吗？"
   ],
   "assessmentPrompt": "Use an idiom. Does the learner ask what it means, and whether it is literal?",
   "lines": [
    "m_saying_means",
    "r_literal_or_figurative"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_char_why",
   "move": "meta",
   "name": "Ask why a character is written that way",
   "description": "Ask why a character is written the way it is. The answer is a family of characters.",
   "hsk": 5,
   "evidence": [
    "Asks 这个字为什么这么写？ about a character",
    "Asks for other characters with the same part"
   ],
   "assessmentPrompt": "Write a character for the learner. Do they ask why it is written that way?",
   "lines": [
    "m_why_written"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_intent",
   "move": "meta",
   "name": "Ask what they meant",
   "description": "Ask whether the speaker was joking or serious, or whether it is the general case.",
   "hsk": 2,
   "evidence": [
    "Asks 你是开玩笑，还是认真的？",
    "Asks 这是一般情况，还是特殊情况？"
   ],
   "assessmentPrompt": "Say something that could be a joke. Does the learner ask which it was?",
   "lines": [
    "r_joking_or_serious",
    "r_general_or_exception"
   ],
   "topic": null
  },
  {
   "id": "cs_meta_dialect",
   "move": "meta",
   "name": "Ask about dialect",
   "description": "Ask whether the speaker is using Standard Mandarin or a dialect, and which one.",
   "hsk": 4,
   "evidence": [
    "Asks 您说的是普通话还是方言？",
    "Asks 这是什么方言？"
   ],
   "assessmentPrompt": "Use a dialect word. Does the learner ask about it?",
   "lines": [
    "r_dialect_check",
    "atn_dialect_name"
   ],
   "topic": null
  }
 ],
 "dependencies": [
  {
   "skill": "cs_frame_ne",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_weishenme",
   "requires": "cs_frame_shenme",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_weishenme",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_duojiu",
   "requires": "cs_frame_jiduoshao",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_duojiu",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_tag",
   "requires": "cs_frame_ma",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_tag",
   "requires": "cs_frame_a_not_a",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_tag",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_juede",
   "requires": "cs_frame_zenme",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_guo",
   "requires": "cs_frame_ma",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_frame_followup",
   "requires": "cs_frame_zenme",
   "strength": "hard",
   "reason": "Prerequisite in the course graph"
  },
  {
   "skill": "cs_open_ask_chinese",
   "requires": "cs_frame_ma",
   "strength": "hard",
   "reason": "The line is a 吗 question"
  },
  {
   "skill": "cs_open_ask_permission",
   "requires": "cs_open_ask_chinese",
   "strength": "soft",
   "reason": "Usually said after the language is confirmed"
  },
  {
   "skill": "cs_open_ask_permission",
   "requires": "cs_frame_ma",
   "strength": "hard",
   "reason": "The line is a 吗 question"
  },
  {
   "skill": "cs_open_invite_correction",
   "requires": "cs_open_ask_permission",
   "strength": "soft",
   "reason": "Comes once the speaker has agreed to talk"
  },
  {
   "skill": "cs_open_compliment",
   "requires": "cs_open_comment_scene",
   "strength": "soft",
   "reason": "Same move, aimed at the person instead of the place"
  },
  {
   "skill": "cs_open_comment_food",
   "requires": "cs_open_comment_scene",
   "strength": "soft",
   "reason": "Same move, aimed at the food"
  },
  {
   "skill": "cs_open_greet_regular",
   "requires": "cs_frame_zenme",
   "strength": "hard",
   "reason": "The greeting uses 怎么样"
  },
  {
   "skill": "cs_open_greet_regular",
   "requires": "cs_frame_a_not_a",
   "strength": "hard",
   "reason": "The question uses 是不是"
  },
  {
   "skill": "cs_point_location",
   "requires": "cs_point_this_that",
   "strength": "hard",
   "reason": "Builds on referring to a thing with this and that"
  },
  {
   "skill": "cs_point_senses",
   "requires": "cs_point_this_that",
   "strength": "hard",
   "reason": "Builds on referring to a thing with this and that"
  },
  {
   "skill": "cs_point_motion",
   "requires": "cs_point_this_that",
   "strength": "hard",
   "reason": "Builds on referring to a thing with this and that"
  },
  {
   "skill": "cs_point_person_object",
   "requires": "cs_point_this_that",
   "strength": "hard",
   "reason": "Builds on referring to a thing with this and that"
  },
  {
   "skill": "cs_point_person_action",
   "requires": "cs_point_this_that",
   "strength": "hard",
   "reason": "Builds on referring to a thing with this and that"
  },
  {
   "skill": "cs_point_compare",
   "requires": "cs_point_this_that",
   "strength": "hard",
   "reason": "Builds on referring to a thing with this and that"
  },
  {
   "skill": "cs_point_detail",
   "requires": "cs_point_this_that",
   "strength": "hard",
   "reason": "Builds on referring to a thing with this and that"
  },
  {
   "skill": "cs_point_writing",
   "requires": "cs_point_this_that",
   "strength": "hard",
   "reason": "Builds on referring to a thing with this and that"
  },
  {
   "skill": "cs_point_feel",
   "requires": "cs_point_senses",
   "strength": "soft",
   "reason": "Shares the senses with the other person"
  },
  {
   "skill": "cs_name_called",
   "requires": "cs_frame_survival_kit",
   "strength": "hard",
   "reason": "Extends 这是什么？ to any thing"
  },
  {
   "skill": "cs_name_called",
   "requires": "cs_frame_shenme",
   "strength": "hard",
   "reason": "The line is a 什么 question"
  },
  {
   "skill": "cs_name_called",
   "requires": "cs_point_this_that",
   "strength": "hard",
   "reason": "You name what you point at"
  },
  {
   "skill": "cs_name_kind",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "The kind is the next word down from the name"
  },
  {
   "skill": "cs_name_word_above",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "The word above needs a name to stand on"
  },
  {
   "skill": "cs_name_part_inside",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "The part needs a name for the whole"
  },
  {
   "skill": "cs_name_part_inside",
   "requires": "cs_point_detail",
   "strength": "soft",
   "reason": "Pointing at a detail picks the part"
  },
  {
   "skill": "cs_name_food",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "Same move, applied to one kind of thing"
  },
  {
   "skill": "cs_name_animals",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "Same move, applied to one kind of thing"
  },
  {
   "skill": "cs_name_objects",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "Same move, applied to one kind of thing"
  },
  {
   "skill": "cs_name_places",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "Same move, applied to one kind of thing"
  },
  {
   "skill": "cs_name_culture",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "Same move, applied to one kind of thing"
  },
  {
   "skill": "cs_name_qualities",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "Same move, applied to one kind of thing"
  },
  {
   "skill": "cs_name_how_made",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "Same move, applied to one kind of thing"
  },
  {
   "skill": "cs_name_actions_jobs",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "Same move, applied to one kind of thing"
  },
  {
   "skill": "cs_name_food",
   "requires": "cs_name_part_inside",
   "strength": "soft",
   "reason": "A dish is named, then what is inside it"
  },
  {
   "skill": "cs_name_people",
   "requires": "cs_frame_shei",
   "strength": "hard",
   "reason": "The line is a 谁 question"
  },
  {
   "skill": "cs_name_meaning",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "You need a name before you ask what it means"
  },
  {
   "skill": "cs_name_meaning",
   "requires": "cs_repair_meaning",
   "strength": "soft",
   "reason": "Same question, aimed at a name"
  },
  {
   "skill": "cs_name_read_char",
   "requires": "cs_point_writing",
   "strength": "hard",
   "reason": "You point at the character first"
  },
  {
   "skill": "cs_name_read_char",
   "requires": "cs_frame_zenme",
   "strength": "hard",
   "reason": "The line is a 怎么 question"
  },
  {
   "skill": "cs_name_measure",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "You need the noun before its measure word"
  },
  {
   "skill": "cs_life_hometown",
   "requires": "cs_frame_nar",
   "strength": "hard",
   "reason": "The line is a 哪儿 question"
  },
  {
   "skill": "cs_life_where_live",
   "requires": "cs_frame_nar",
   "strength": "hard",
   "reason": "The line is a 哪儿 question"
  },
  {
   "skill": "cs_life_family",
   "requires": "cs_frame_jiduoshao",
   "strength": "hard",
   "reason": "Uses 几 for the family size"
  },
  {
   "skill": "cs_life_family",
   "requires": "cs_frame_ma",
   "strength": "hard",
   "reason": "Asks about children with 吗"
  },
  {
   "skill": "cs_life_work",
   "requires": "cs_frame_shenme",
   "strength": "hard",
   "reason": "The line is a 什么 question"
  },
  {
   "skill": "cs_life_likes",
   "requires": "cs_frame_shenme",
   "strength": "hard",
   "reason": "The line is a 什么 question"
  },
  {
   "skill": "cs_life_choice",
   "requires": "cs_frame_haishi",
   "strength": "hard",
   "reason": "The line is a 还是 question"
  },
  {
   "skill": "cs_life_favorite",
   "requires": "cs_name_called",
   "strength": "hard",
   "reason": "You need a few names before asking which is best"
  },
  {
   "skill": "cs_life_hometown_bridge",
   "requires": "cs_life_favorite",
   "strength": "soft",
   "reason": "Comes after the object has become about the person"
  },
  {
   "skill": "cs_receipt_got_it",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "A receipt keeps the speaker going"
  },
  {
   "skill": "cs_receipt_oh_i_see",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "A receipt keeps the speaker going"
  },
  {
   "skill": "cs_receipt_really",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "A receipt keeps the speaker going"
  },
  {
   "skill": "cs_receipt_agree",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "A receipt keeps the speaker going"
  },
  {
   "skill": "cs_receipt_keep_going",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "A receipt keeps the speaker going"
  },
  {
   "skill": "cs_receipt_got_it",
   "requires": "cs_frame_survival_kit",
   "strength": "soft",
   "reason": "听懂了！ is in the survival kit"
  },
  {
   "skill": "cs_receipt_admire",
   "requires": "cs_receipt_really",
   "strength": "soft",
   "reason": "A stronger reaction than surprise"
  },
  {
   "skill": "cs_receipt_enjoy",
   "requires": "cs_frame_keep_talking",
   "strength": "soft",
   "reason": "Enjoyment is fuel that keeps the story going"
  },
  {
   "skill": "cs_receipt_personal",
   "requires": "cs_receipt_enjoy",
   "strength": "soft",
   "reason": "Moves from the story to your own feeling"
  },
  {
   "skill": "cs_repair_meaning",
   "requires": "cs_frame_survival_kit",
   "strength": "hard",
   "reason": "什么意思？ is in the survival kit"
  },
  {
   "skill": "cs_repair_isolate",
   "requires": "cs_frame_survival_kit",
   "strength": "hard",
   "reason": "Narrows 什么意思？ down to one word"
  },
  {
   "skill": "cs_repair_isolate",
   "requires": "cs_frame_shenme",
   "strength": "hard",
   "reason": "The line is a 什么 question"
  },
  {
   "skill": "cs_repair_write",
   "requires": "cs_frame_survival_kit",
   "strength": "hard",
   "reason": "Pins down a word the survival kit just got you"
  },
  {
   "skill": "cs_repair_tone",
   "requires": "cs_repair_write",
   "strength": "soft",
   "reason": "Asked about a word you are trying to keep"
  },
  {
   "skill": "cs_repair_which_char",
   "requires": "cs_repair_write",
   "strength": "hard",
   "reason": "You check a character once it is written"
  },
  {
   "skill": "cs_repair_own_output",
   "requires": "cs_frame_a_not_a",
   "strength": "hard",
   "reason": "The line is an A-not-A question"
  },
  {
   "skill": "cs_repair_check_understanding",
   "requires": "cs_frame_tag",
   "strength": "hard",
   "reason": "Restate, then tag it with a check"
  },
  {
   "skill": "cs_repair_check_understanding",
   "requires": "cs_repair_meaning",
   "strength": "soft",
   "reason": "Comes after the explanation you asked for"
  },
  {
   "skill": "cs_repair_narrow",
   "requires": "cs_frame_haishi",
   "strength": "hard",
   "reason": "The line is a 还是 question"
  },
  {
   "skill": "cs_repair_simpler",
   "requires": "cs_frame_a_not_a",
   "strength": "hard",
   "reason": "The question uses 有没有"
  },
  {
   "skill": "cs_repair_simpler",
   "requires": "cs_repair_meaning",
   "strength": "soft",
   "reason": "The next step when the meaning still did not land"
  },
  {
   "skill": "cs_repair_show",
   "requires": "cs_point_this_that",
   "strength": "soft",
   "reason": "Asks the speaker to do the pointing"
  },
  {
   "skill": "cs_repair_example",
   "requires": "cs_repair_meaning",
   "strength": "soft",
   "reason": "An example is a second way to get the meaning"
  },
  {
   "skill": "cs_repair_gist",
   "requires": "cs_repair_isolate",
   "strength": "soft",
   "reason": "The opposite cut: the whole point instead of one word"
  },
  {
   "skill": "cs_repair_word_shape",
   "requires": "cs_repair_write",
   "strength": "hard",
   "reason": "You see the characters before asking how they group"
  },
  {
   "skill": "cs_chase_then",
   "requires": "cs_frame_keep_talking",
   "strength": "hard",
   "reason": "后来呢？ is in the keep-talking kit"
  },
  {
   "skill": "cs_chase_why",
   "requires": "cs_frame_weishenme",
   "strength": "hard",
   "reason": "The line is 为什么"
  },
  {
   "skill": "cs_chase_opinion",
   "requires": "cs_frame_zenme",
   "strength": "hard",
   "reason": "The question uses 怎么样"
  },
  {
   "skill": "cs_chase_back_then",
   "requires": "cs_chase_then",
   "strength": "hard",
   "reason": "Moves the story from what happened to how it was"
  },
  {
   "skill": "cs_chase_details",
   "requires": "cs_chase_then",
   "strength": "soft",
   "reason": "Pins down a story once it is moving"
  },
  {
   "skill": "cs_chase_details",
   "requires": "cs_frame_jiduoshao",
   "strength": "hard",
   "reason": "The question uses 多少"
  },
  {
   "skill": "cs_chase_details",
   "requires": "cs_frame_nar",
   "strength": "hard",
   "reason": "The question uses 哪儿"
  },
  {
   "skill": "cs_chase_who",
   "requires": "cs_frame_shei",
   "strength": "hard",
   "reason": "The line is a 谁 question"
  },
  {
   "skill": "cs_chase_more",
   "requires": "cs_chase_then",
   "strength": "soft",
   "reason": "Asks for more of a story already moving"
  },
  {
   "skill": "cs_chase_feelings",
   "requires": "cs_frame_ma",
   "strength": "hard",
   "reason": "The lines are 吗 questions"
  },
  {
   "skill": "cs_chase_feelings",
   "requires": "cs_chase_then",
   "strength": "soft",
   "reason": "You ask how it felt once you know what happened"
  },
  {
   "skill": "cs_chase_learn",
   "requires": "cs_frame_followup",
   "strength": "hard",
   "reason": "您是怎么学的？ is a chase-the-story line"
  },
  {
   "skill": "cs_chase_learn",
   "requires": "cs_receipt_admire",
   "strength": "soft",
   "reason": "Admiring the skill first makes the ask natural"
  },
  {
   "skill": "cs_meta_difference",
   "requires": "cs_repair_example",
   "strength": "soft",
   "reason": "Examples are how the difference gets explained"
  },
  {
   "skill": "cs_meta_difference",
   "requires": "cs_repair_check_understanding",
   "strength": "soft",
   "reason": "You check the difference by restating it"
  },
  {
   "skill": "cs_meta_register",
   "requires": "cs_frame_haishi",
   "strength": "hard",
   "reason": "The line is a 还是 question"
  },
  {
   "skill": "cs_meta_spoken",
   "requires": "cs_meta_register",
   "strength": "soft",
   "reason": "Once a word is written, ask what is spoken"
  },
  {
   "skill": "cs_meta_who_says",
   "requires": "cs_frame_ma",
   "strength": "hard",
   "reason": "The line is a 吗 question"
  },
  {
   "skill": "cs_meta_who_says",
   "requires": "cs_meta_spoken",
   "strength": "soft",
   "reason": "Narrows spoken use to who says it"
  },
  {
   "skill": "cs_meta_politeness",
   "requires": "cs_meta_register",
   "strength": "soft",
   "reason": "Formality and politeness are asked together"
  },
  {
   "skill": "cs_meta_natural",
   "requires": "cs_repair_simpler",
   "strength": "hard",
   "reason": "Same ask, aimed at sounding natural instead of simple"
  },
  {
   "skill": "cs_meta_saying",
   "requires": "cs_repair_meaning",
   "strength": "hard",
   "reason": "什么意思 applied to a whole expression"
  },
  {
   "skill": "cs_meta_char_why",
   "requires": "cs_frame_weishenme",
   "strength": "hard",
   "reason": "The line is a 为什么 question"
  },
  {
   "skill": "cs_meta_char_why",
   "requires": "cs_repair_write",
   "strength": "soft",
   "reason": "You see the character before asking about it"
  },
  {
   "skill": "cs_meta_intent",
   "requires": "cs_frame_haishi",
   "strength": "hard",
   "reason": "The lines are 还是 questions"
  },
  {
   "skill": "cs_meta_dialect",
   "requires": "cs_frame_haishi",
   "strength": "hard",
   "reason": "The line is a 还是 question"
  }
 ]
}
