{
  "registryVersion": 1,
  "wire": {
    "cellWidthBytes": 1,
    "escapeCode": 255,
    "escapePayload": "varint symbol id",
    "coreRange": [0, 127],
    "extendedRange": [128, 254],
    "note": "Known symbols occupy one byte. 0xFF is followed by a varint registry id so future symbols never require widening a cell."
  },
  "symbols": [
    {"id": 0,  "key": "noStitch",             "display": ".", "nameZh": "无针格",         "nameEn": "No stitch",                "consumed": 0, "produced": 0, "inverse": 0,    "tier": "core",     "groupWidth": 1},
    {"id": 1,  "key": "knit",                 "display": "K", "nameZh": "下针",           "nameEn": "Knit",                     "consumed": 1, "produced": 1, "inverse": 2,    "tier": "core",     "groupWidth": 1},
    {"id": 2,  "key": "purl",                 "display": "P", "nameZh": "上针",           "nameEn": "Purl",                     "consumed": 1, "produced": 1, "inverse": 1,    "tier": "core",     "groupWidth": 1},
    {"id": 3,  "key": "unknown",              "display": "U", "nameZh": "未知",           "nameEn": "Unknown",                  "consumed": 1, "produced": 1, "inverse": null, "tier": "core",     "groupWidth": 1},
    {"id": 4,  "key": "yarnOver",             "display": "O", "nameZh": "挂针",           "nameEn": "Yarn over",                "consumed": 0, "produced": 1, "inverse": 4,    "tier": "core",     "groupWidth": 1},
    {"id": 5,  "key": "makeLeft",             "display": "M", "nameZh": "左扭加针",       "nameEn": "Left twisted increase",    "consumed": 0, "produced": 1, "inverse": null, "tier": "core",     "groupWidth": 1},
    {"id": 6,  "key": "makePurl",             "display": "N", "nameZh": "扭加针（上针）",  "nameEn": "Twisted purl increase",    "consumed": 0, "produced": 1, "inverse": null, "tier": "core",     "groupWidth": 1},
    {"id": 7,  "key": "makeRight",            "display": "T", "nameZh": "右扭加针",       "nameEn": "Right twisted increase",   "consumed": 0, "produced": 1, "inverse": null, "tier": "core",     "groupWidth": 1},
    {"id": 8,  "key": "slipFront",            "display": "S", "nameZh": "滑针（线在前）",  "nameEn": "Slip purlwise, yarn front", "consumed": 1, "produced": 1, "inverse": null, "tier": "core",     "groupWidth": 1},
    {"id": 9,  "key": "leftDecrease",         "display": "L", "nameZh": "左上二并一",     "nameEn": "Left-over decrease",       "consumed": 2, "produced": 1, "inverse": 11,   "tier": "core",     "groupWidth": 1},
    {"id": 10, "key": "rightDecrease",        "display": "R", "nameZh": "右上二并一",     "nameEn": "Right-over decrease",      "consumed": 2, "produced": 1, "inverse": 12,   "tier": "core",     "groupWidth": 1},
    {"id": 11, "key": "rightPurlDecrease",    "display": "D", "nameZh": "右上二并一（上针）", "nameEn": "Right-over purl decrease", "consumed": 2, "produced": 1, "inverse": 9,    "tier": "core",     "groupWidth": 1},
    {"id": 12, "key": "leftPurlDecrease",     "display": "E", "nameZh": "左上二并一（上针）", "nameEn": "Left-over purl decrease", "consumed": 2, "produced": 1, "inverse": 10,   "tier": "core",     "groupWidth": 1},
    {"id": 13, "key": "cableFront6",          "display": "A", "nameZh": "3针前置交叉",     "nameEn": "Hold 3 front cable",       "consumed": 1, "produced": 1, "inverse": null, "tier": "extended", "groupWidth": 6},
    {"id": 14, "key": "cableBack6",           "display": "B", "nameZh": "3针后置交叉",     "nameEn": "Hold 3 back cable",        "consumed": 1, "produced": 1, "inverse": null, "tier": "extended", "groupWidth": 6},
    {"id": 15, "key": "cableFront4",          "display": "C", "nameZh": "2针前置交叉",     "nameEn": "Hold 2 front cable",       "consumed": 1, "produced": 1, "inverse": null, "tier": "extended", "groupWidth": 4},
    {"id": 16, "key": "cableBack2",           "display": "F", "nameZh": "1针后置交叉",     "nameEn": "Hold 1 back cable",        "consumed": 1, "produced": 1, "inverse": null, "tier": "extended", "groupWidth": 2},
    {"id": 17, "key": "cableFront5",          "display": "G", "nameZh": "前置3针与2针交叉", "nameEn": "Hold 3 front, knit 2, knit held 3", "consumed": 1, "produced": 1, "inverse": null, "tier": "extended", "groupWidth": 5},
    {"id": 18, "key": "cableBack5",           "display": "H", "nameZh": "后置2针与3针交叉", "nameEn": "Hold 2 back, knit 3, knit held 2", "consumed": 1, "produced": 1, "inverse": null, "tier": "extended", "groupWidth": 5}
  ]
}
