Files
modeling-app/rust/kcl-lib/tests/kcl_samples/walkie-talkie/artifact_graph_flowchart.snap.md
Adam Chalmers 6e115c19d5 KCL: Migrate hole to kwargs (#6382)
Previously:

`|> hole(circle(radius = 2, center = p), %)`

Now:

`|> subtract2d(tool = circle(radius = 2, center = p))`
2025-04-26 15:31:51 -05:00

16 KiB

flowchart LR
  subgraph path2 [Path]
    2["Path<br>[391, 434, 7]"]
    3["Segment<br>[440, 478, 7]"]
    4["Segment<br>[484, 524, 7]"]
    5["Segment<br>[530, 569, 7]"]
    6["Segment<br>[575, 597, 7]"]
    7[Solid2d]
  end
  subgraph path23 [Path]
    23["Path<br>[968, 1093, 7]"]
    24["Segment<br>[1099, 1157, 7]"]
    25["Segment<br>[1163, 1288, 7]"]
    26["Segment<br>[1294, 1352, 7]"]
    27["Segment<br>[1358, 1486, 7]"]
    28["Segment<br>[1492, 1553, 7]"]
    29["Segment<br>[1559, 1688, 7]"]
    30["Segment<br>[1694, 1754, 7]"]
    31["Segment<br>[1760, 1767, 7]"]
    32[Solid2d]
  end
  subgraph path50 [Path]
    50["Path<br>[1922, 1976, 7]"]
    51["Segment<br>[1982, 2023, 7]"]
    52["Segment<br>[2029, 2058, 7]"]
    53["Segment<br>[2064, 2094, 7]"]
    54["Segment<br>[2100, 2156, 7]"]
    55["Segment<br>[2162, 2169, 7]"]
    56[Solid2d]
  end
  subgraph path66 [Path]
    66["Path<br>[2312, 2349, 7]"]
    67["Segment<br>[2355, 2386, 7]"]
    68["Segment<br>[2392, 2425, 7]"]
    69["Segment<br>[2431, 2463, 7]"]
    70["Segment<br>[2469, 2476, 7]"]
    71[Solid2d]
  end
  subgraph path82 [Path]
    82["Path<br>[330, 355, 9]"]
    83["Segment<br>[361, 394, 9]"]
    84["Segment<br>[400, 435, 9]"]
    85["Segment<br>[441, 475, 9]"]
    86["Segment<br>[481, 488, 9]"]
    87[Solid2d]
  end
  subgraph path89 [Path]
    89["Path<br>[624, 750, 9]"]
    90["Segment<br>[756, 787, 9]"]
    94[Solid2d]
  end
  subgraph path103 [Path]
    103["Path<br>[478, 532, 8]"]
    104["Segment<br>[538, 565, 8]"]
    105["Segment<br>[571, 600, 8]"]
    106["Segment<br>[606, 634, 8]"]
    107["Segment<br>[640, 696, 8]"]
    108["Segment<br>[702, 709, 8]"]
    109[Solid2d]
  end
  subgraph path111 [Path]
    111["Path<br>[980, 1027, 8]"]
    112["Segment<br>[1033, 1074, 8]"]
    113["Segment<br>[1080, 1122, 8]"]
    114["Segment<br>[1128, 1170, 8]"]
    115["Segment<br>[1176, 1183, 8]"]
    116[Solid2d]
  end
  subgraph path118 [Path]
    118["Path<br>[1441, 1600, 8]"]
    119["Segment<br>[1606, 1682, 8]"]
    120["Segment<br>[1688, 1849, 8]"]
    121["Segment<br>[1855, 1931, 8]"]
    122["Segment<br>[1937, 2101, 8]"]
    123["Segment<br>[2107, 2184, 8]"]
    124["Segment<br>[2190, 2353, 8]"]
    125["Segment<br>[2359, 2435, 8]"]
    126["Segment<br>[2441, 2448, 8]"]
    127[Solid2d]
  end
  subgraph path129 [Path]
    129["Path<br>[123, 210, 13]"]
    130["Segment<br>[218, 247, 13]"]
    131["Segment<br>[255, 283, 13]"]
    132["Segment<br>[291, 369, 13]"]
    133["Segment<br>[377, 424, 13]"]
    134["Segment<br>[432, 460, 13]"]
    135["Segment<br>[468, 497, 13]"]
    136["Segment<br>[505, 534, 13]"]
    137["Segment<br>[542, 608, 13]"]
    138["Segment<br>[616, 644, 13]"]
    139["Segment<br>[652, 681, 13]"]
    140["Segment<br>[689, 751, 13]"]
    141["Segment<br>[759, 787, 13]"]
    142["Segment<br>[795, 829, 13]"]
    143["Segment<br>[837, 867, 13]"]
    144["Segment<br>[875, 943, 13]"]
    145["Segment<br>[951, 958, 13]"]
    146[Solid2d]
  end
  subgraph path148 [Path]
    148["Path<br>[1092, 1190, 13]"]
    149["Segment<br>[1198, 1276, 13]"]
    150["Segment<br>[1284, 1331, 13]"]
    151["Segment<br>[1339, 1419, 13]"]
    152["Segment<br>[1427, 1434, 13]"]
    153[Solid2d]
  end
  subgraph path155 [Path]
    155["Path<br>[1531, 1628, 13]"]
    156["Segment<br>[1636, 1714, 13]"]
    157["Segment<br>[1722, 1770, 13]"]
    158["Segment<br>[1778, 1858, 13]"]
    159["Segment<br>[1866, 1873, 13]"]
    160[Solid2d]
  end
  subgraph path162 [Path]
    162["Path<br>[1092, 1190, 13]"]
    163["Segment<br>[1198, 1276, 13]"]
    164["Segment<br>[1284, 1331, 13]"]
    165["Segment<br>[1339, 1419, 13]"]
    166["Segment<br>[1427, 1434, 13]"]
    167[Solid2d]
  end
  subgraph path169 [Path]
    169["Path<br>[1531, 1628, 13]"]
    170["Segment<br>[1636, 1714, 13]"]
    171["Segment<br>[1722, 1770, 13]"]
    172["Segment<br>[1778, 1858, 13]"]
    173["Segment<br>[1866, 1873, 13]"]
    174[Solid2d]
  end
  subgraph path194 [Path]
    194["Path<br>[261, 354, 10]"]
    195["Segment<br>[360, 409, 10]"]
    196["Segment<br>[415, 465, 10]"]
    197["Segment<br>[471, 521, 10]"]
    198["Segment<br>[527, 545, 10]"]
    199[Solid2d]
  end
  subgraph path216 [Path]
    216["Path<br>[309, 339, 11]"]
    217["Segment<br>[345, 377, 11]"]
    218["Segment<br>[383, 416, 11]"]
    219["Segment<br>[422, 470, 11]"]
    220["Segment<br>[476, 503, 11]"]
    221["Segment<br>[509, 516, 11]"]
    222[Solid2d]
  end
  subgraph path230 [Path]
    230["Path<br>[398, 423, 12]"]
    231["Segment<br>[431, 489, 12]"]
    232["Segment<br>[497, 556, 12]"]
    233["Segment<br>[564, 607, 12]"]
    234["Segment<br>[615, 622, 12]"]
    235[Solid2d]
  end
  subgraph path250 [Path]
    250["Path<br>[398, 423, 12]"]
    251["Segment<br>[431, 489, 12]"]
    252["Segment<br>[497, 556, 12]"]
    253["Segment<br>[564, 607, 12]"]
    254["Segment<br>[615, 622, 12]"]
    255[Solid2d]
  end
  subgraph path270 [Path]
    270["Path<br>[398, 423, 12]"]
    271["Segment<br>[431, 489, 12]"]
    272["Segment<br>[497, 556, 12]"]
    273["Segment<br>[564, 607, 12]"]
    274["Segment<br>[615, 622, 12]"]
    275[Solid2d]
  end
  subgraph path290 [Path]
    290["Path<br>[398, 423, 12]"]
    291["Segment<br>[431, 489, 12]"]
    292["Segment<br>[497, 556, 12]"]
    293["Segment<br>[564, 607, 12]"]
    294["Segment<br>[615, 622, 12]"]
    295[Solid2d]
  end
  1["Plane<br>[368, 385, 7]"]
  8["Sweep Extrusion<br>[603, 633, 7]"]
  9[Wall]
  10[Wall]
  11[Wall]
  12[Wall]
  13["Cap Start"]
  14["Cap End"]
  15["SweepEdge Opposite"]
  16["SweepEdge Opposite"]
  17["SweepEdge Opposite"]
  18["SweepEdge Adjacent"]
  19["EdgeCut Chamfer<br>[639, 870, 7]"]
  20["EdgeCut Chamfer<br>[639, 870, 7]"]
  21["EdgeCut Chamfer<br>[639, 870, 7]"]
  22["EdgeCut Chamfer<br>[639, 870, 7]"]
  33["Sweep Extrusion<br>[1781, 1824, 7]"]
  34[Wall]
  35[Wall]
  36[Wall]
  37[Wall]
  38[Wall]
  39[Wall]
  40[Wall]
  41[Wall]
  42["Cap Start"]
  43["SweepEdge Opposite"]
  44["SweepEdge Opposite"]
  45["SweepEdge Opposite"]
  46["SweepEdge Opposite"]
  47["SweepEdge Opposite"]
  48["SweepEdge Opposite"]
  49["SweepEdge Opposite"]
  57["Sweep Extrusion<br>[2183, 2226, 7]"]
  58[Wall]
  59[Wall]
  60[Wall]
  61[Wall]
  62["Cap Start"]
  63["SweepEdge Opposite"]
  64["SweepEdge Opposite"]
  65["SweepEdge Opposite"]
  72["Sweep Extrusion<br>[2478, 2511, 7]"]
  73[Wall]
  74[Wall]
  75[Wall]
  76[Wall]
  77["Cap Start"]
  78["SweepEdge Opposite"]
  79["SweepEdge Opposite"]
  80["SweepEdge Opposite"]
  81["Plane<br>[307, 324, 9]"]
  88["Plane<br>[535, 574, 9]"]
  91["SweepEdge Opposite"]
  92["SweepEdge Opposite"]
  93["SweepEdge Opposite"]
  95["Sweep Loft<br>[914, 957, 9]"]
  96[Wall]
  97[Wall]
  98[Wall]
  99[Wall]
  100["Cap Start"]
  101["Cap End"]
  102["Plane<br>[455, 472, 8]"]
  110["Plane<br>[957, 974, 8]"]
  117["Plane<br>[1418, 1435, 8]"]
  128["Plane<br>[2589, 2606, 8]"]
  147["Plane<br>[2659, 2676, 8]"]
  154["Plane<br>[2731, 2748, 8]"]
  161["Plane<br>[2802, 2819, 8]"]
  168["Plane<br>[2873, 2890, 8]"]
  175["Sweep Extrusion<br>[2914, 2945, 8]"]
  176[Wall]
  177[Wall]
  178[Wall]
  179[Wall]
  180[Wall]
  181[Wall]
  182[Wall]
  183[Wall]
  184["Cap Start"]
  185["Cap End"]
  186["SweepEdge Opposite"]
  187["SweepEdge Opposite"]
  188["SweepEdge Opposite"]
  189["SweepEdge Opposite"]
  190["SweepEdge Opposite"]
  191["SweepEdge Opposite"]
  192["SweepEdge Opposite"]
  193["Plane<br>[238, 255, 10]"]
  200["Sweep Extrusion<br>[591, 643, 10]"]
  201[Wall]
  202[Wall]
  203[Wall]
  204[Wall]
  205["Cap Start"]
  206["Cap End"]
  207["SweepEdge Opposite"]
  208["SweepEdge Opposite"]
  209["SweepEdge Opposite"]
  210["SweepEdge Adjacent"]
  211["EdgeCut Fillet<br>[649, 855, 10]"]
  212["EdgeCut Fillet<br>[649, 855, 10]"]
  213["EdgeCut Fillet<br>[649, 855, 10]"]
  214["EdgeCut Fillet<br>[649, 855, 10]"]
  215["Plane<br>[286, 303, 11]"]
  223["Sweep Revolve<br>[522, 539, 11]"]
  224[Wall]
  225[Wall]
  226[Wall]
  227[Wall]
  228[Wall]
  229["Plane<br>[373, 390, 12]"]
  236["Sweep Extrusion<br>[634, 681, 12]"]
  237[Wall]
  238[Wall]
  239[Wall]
  240[Wall]
  241["Cap Start"]
  242["Cap End"]
  243["SweepEdge Opposite"]
  244["SweepEdge Opposite"]
  245["SweepEdge Opposite"]
  246["SweepEdge Adjacent"]
  247["EdgeCut Chamfer<br>[689, 835, 12]"]
  248["EdgeCut Chamfer<br>[689, 835, 12]"]
  249["Plane<br>[373, 390, 12]"]
  256["Sweep Extrusion<br>[634, 681, 12]"]
  257[Wall]
  258[Wall]
  259[Wall]
  260[Wall]
  261["Cap Start"]
  262["Cap End"]
  263["SweepEdge Opposite"]
  264["SweepEdge Opposite"]
  265["SweepEdge Opposite"]
  266["SweepEdge Adjacent"]
  267["EdgeCut Chamfer<br>[689, 835, 12]"]
  268["EdgeCut Chamfer<br>[689, 835, 12]"]
  269["Plane<br>[373, 390, 12]"]
  276["Sweep Extrusion<br>[634, 681, 12]"]
  277[Wall]
  278[Wall]
  279[Wall]
  280[Wall]
  281["Cap Start"]
  282["Cap End"]
  283["SweepEdge Opposite"]
  284["SweepEdge Opposite"]
  285["SweepEdge Opposite"]
  286["SweepEdge Adjacent"]
  287["EdgeCut Chamfer<br>[689, 835, 12]"]
  288["EdgeCut Chamfer<br>[689, 835, 12]"]
  289["Plane<br>[373, 390, 12]"]
  296["Sweep Extrusion<br>[634, 681, 12]"]
  297[Wall]
  298[Wall]
  299[Wall]
  300[Wall]
  301["Cap Start"]
  302["Cap End"]
  303["SweepEdge Opposite"]
  304["SweepEdge Opposite"]
  305["SweepEdge Opposite"]
  306["SweepEdge Adjacent"]
  307["EdgeCut Chamfer<br>[689, 835, 12]"]
  308["EdgeCut Chamfer<br>[689, 835, 12]"]
  309["StartSketchOnFace<br>[931, 962, 7]"]
  310["StartSketchOnFace<br>[1877, 1916, 7]"]
  311["StartSketchOnFace<br>[2267, 2306, 7]"]
  312["StartSketchOnPlane<br>[594, 618, 9]"]
  1 --- 2
  2 --- 3
  2 --- 4
  2 --- 5
  2 --- 6
  2 ---- 8
  2 --- 7
  3 --- 12
  3 --- 17
  3 --- 18
  3 x--> 13
  4 --- 11
  4 --- 16
  4 x--> 13
  5 --- 10
  5 --- 15
  5 x--> 13
  6 --- 9
  6 x--> 13
  8 --- 9
  8 --- 10
  8 --- 11
  8 --- 12
  8 --- 13
  8 --- 14
  8 --- 15
  8 --- 16
  8 --- 17
  8 --- 18
  14 --- 23
  15 <--x 10
  15 <--x 14
  16 <--x 11
  16 <--x 14
  17 <--x 12
  17 <--x 14
  18 <--x 19
  23 --- 24
  23 --- 25
  23 --- 26
  23 --- 27
  23 --- 28
  23 --- 29
  23 --- 30
  23 --- 31
  23 ---- 33
  23 --- 32
  24 --- 41
  24 --- 49
  24 <--x 14
  25 --- 40
  25 --- 48
  25 <--x 14
  26 --- 39
  26 --- 47
  26 <--x 14
  27 --- 38
  27 --- 46
  27 <--x 14
  28 --- 37
  28 --- 45
  28 <--x 14
  29 --- 36
  29 --- 44
  29 <--x 14
  30 --- 35
  30 --- 43
  30 <--x 14
  31 --- 34
  31 <--x 14
  33 --- 34
  33 --- 35
  33 --- 36
  33 --- 37
  33 --- 38
  33 --- 39
  33 --- 40
  33 --- 41
  33 --- 42
  33 --- 43
  33 --- 44
  33 --- 45
  33 --- 46
  33 --- 47
  33 --- 48
  33 --- 49
  42 --- 50
  42 --- 66
  43 <--x 35
  43 <--x 42
  44 <--x 36
  44 <--x 42
  45 <--x 37
  45 <--x 42
  46 <--x 38
  46 <--x 42
  47 <--x 39
  47 <--x 42
  48 <--x 40
  48 <--x 42
  49 <--x 41
  49 <--x 42
  50 --- 51
  50 --- 52
  50 --- 53
  50 --- 54
  50 --- 55
  50 ---- 57
  50 --- 56
  51 --- 61
  51 --- 65
  51 <--x 42
  52 --- 60
  52 --- 64
  52 <--x 42
  53 --- 59
  53 --- 63
  53 <--x 42
  54 --- 58
  54 <--x 42
  57 --- 58
  57 --- 59
  57 --- 60
  57 --- 61
  57 --- 62
  57 --- 63
  57 --- 64
  57 --- 65
  63 <--x 59
  63 <--x 62
  64 <--x 60
  64 <--x 62
  65 <--x 61
  65 <--x 62
  66 --- 67
  66 --- 68
  66 --- 69
  66 --- 70
  66 ---- 72
  66 --- 71
  67 --- 76
  67 --- 80
  67 <--x 42
  68 --- 75
  68 --- 79
  68 <--x 42
  69 --- 74
  69 --- 78
  69 <--x 42
  70 --- 73
  70 <--x 42
  72 --- 73
  72 --- 74
  72 --- 75
  72 --- 76
  72 --- 77
  72 --- 78
  72 --- 79
  72 --- 80
  78 <--x 74
  78 <--x 77
  79 <--x 75
  79 <--x 77
  80 <--x 76
  80 <--x 77
  81 --- 82
  82 --- 83
  82 --- 84
  82 --- 85
  82 --- 86
  82 ---- 95
  82 --- 87
  83 --- 96
  83 x--> 100
  84 --- 97
  84 --- 91
  84 x--> 100
  85 --- 98
  85 --- 92
  85 x--> 100
  86 --- 99
  86 --- 93
  86 x--> 100
  88 --- 89
  89 --- 90
  89 x--> 91
  89 x--> 92
  89 x--> 93
  89 x---> 95
  89 --- 94
  90 x--> 96
  90 x--> 101
  95 --- 91
  91 x--> 97
  91 x--> 101
  95 --- 92
  92 x--> 98
  92 x--> 101
  95 --- 93
  93 x--> 99
  93 x--> 101
  95 --- 96
  95 --- 97
  95 --- 98
  95 --- 99
  95 --- 100
  95 --- 101
  102 --- 103
  103 --- 104
  103 --- 105
  103 --- 106
  103 --- 107
  103 --- 108
  103 --- 109
  110 --- 111
  111 --- 112
  111 --- 113
  111 --- 114
  111 --- 115
  111 --- 116
  117 --- 118
  118 --- 119
  118 --- 120
  118 --- 121
  118 --- 122
  118 --- 123
  118 --- 124
  118 --- 125
  118 --- 126
  118 ---- 175
  118 --- 127
  119 --- 183
  119 --- 192
  119 x--> 185
  120 --- 182
  120 --- 191
  120 x--> 185
  121 --- 181
  121 --- 190
  121 x--> 185
  122 --- 180
  122 --- 189
  122 x--> 185
  123 --- 179
  123 --- 188
  123 x--> 185
  124 --- 178
  124 --- 187
  124 x--> 185
  125 --- 177
  125 --- 186
  125 x--> 185
  126 --- 176
  126 x--> 185
  128 --- 129
  129 --- 130
  129 --- 131
  129 --- 132
  129 --- 133
  129 --- 134
  129 --- 135
  129 --- 136
  129 --- 137
  129 --- 138
  129 --- 139
  129 --- 140
  129 --- 141
  129 --- 142
  129 --- 143
  129 --- 144
  129 --- 145
  129 --- 146
  147 --- 148
  148 --- 149
  148 --- 150
  148 --- 151
  148 --- 152
  148 --- 153
  154 --- 155
  155 --- 156
  155 --- 157
  155 --- 158
  155 --- 159
  155 --- 160
  161 --- 162
  162 --- 163
  162 --- 164
  162 --- 165
  162 --- 166
  162 --- 167
  168 --- 169
  169 --- 170
  169 --- 171
  169 --- 172
  169 --- 173
  169 --- 174
  175 --- 176
  175 --- 177
  175 --- 178
  175 --- 179
  175 --- 180
  175 --- 181
  175 --- 182
  175 --- 183
  175 --- 184
  175 --- 185
  175 --- 186
  175 --- 187
  175 --- 188
  175 --- 189
  175 --- 190
  175 --- 191
  175 --- 192
  186 <--x 177
  186 <--x 184
  187 <--x 178
  187 <--x 184
  188 <--x 179
  188 <--x 184
  189 <--x 180
  189 <--x 184
  190 <--x 181
  190 <--x 184
  191 <--x 182
  191 <--x 184
  192 <--x 183
  192 <--x 184
  193 --- 194
  194 --- 195
  194 --- 196
  194 --- 197
  194 --- 198
  194 ---- 200
  194 --- 199
  195 --- 204
  195 --- 209
  195 --- 210
  195 x--> 205
  196 --- 203
  196 --- 208
  196 x--> 205
  197 --- 202
  197 --- 207
  197 x--> 205
  198 --- 201
  198 x--> 205
  200 --- 201
  200 --- 202
  200 --- 203
  200 --- 204
  200 --- 205
  200 --- 206
  200 --- 207
  200 --- 208
  200 --- 209
  200 --- 210
  207 <--x 202
  207 <--x 206
  208 <--x 203
  208 <--x 206
  209 <--x 204
  209 <--x 206
  210 <--x 211
  215 --- 216
  216 --- 217
  216 --- 218
  216 --- 219
  216 --- 220
  216 --- 221
  216 ---- 223
  216 --- 222
  217 --- 224
  218 --- 225
  219 --- 226
  220 --- 227
  221 --- 228
  223 --- 224
  223 --- 225
  223 --- 226
  223 --- 227
  223 --- 228
  223 <--x 218
  223 <--x 219
  223 <--x 220
  223 <--x 221
  229 --- 230
  230 --- 231
  230 --- 232
  230 --- 233
  230 --- 234
  230 ---- 236
  230 --- 235
  231 --- 237
  231 --- 246
  231 x--> 241
  232 --- 238
  232 --- 243
  232 x--> 241
  233 --- 239
  233 --- 244
  233 x--> 241
  234 --- 240
  234 --- 245
  234 x--> 241
  236 --- 237
  236 --- 238
  236 --- 239
  236 --- 240
  236 --- 241
  236 --- 242
  236 --- 243
  236 --- 244
  236 --- 245
  236 --- 246
  243 <--x 238
  243 <--x 242
  244 <--x 239
  244 <--x 242
  245 <--x 240
  245 <--x 242
  246 <--x 247
  249 --- 250
  250 --- 251
  250 --- 252
  250 --- 253
  250 --- 254
  250 ---- 256
  250 --- 255
  251 --- 257
  251 --- 266
  251 x--> 261
  252 --- 258
  252 --- 263
  252 x--> 261
  253 --- 259
  253 --- 264
  253 x--> 261
  254 --- 260
  254 --- 265
  254 x--> 261
  256 --- 257
  256 --- 258
  256 --- 259
  256 --- 260
  256 --- 261
  256 --- 262
  256 --- 263
  256 --- 264
  256 --- 265
  256 --- 266
  263 <--x 258
  263 <--x 262
  264 <--x 259
  264 <--x 262
  265 <--x 260
  265 <--x 262
  266 <--x 267
  269 --- 270
  270 --- 271
  270 --- 272
  270 --- 273
  270 --- 274
  270 ---- 276
  270 --- 275
  271 --- 277
  271 --- 286
  271 x--> 281
  272 --- 278
  272 --- 283
  272 x--> 281
  273 --- 279
  273 --- 284
  273 x--> 281
  274 --- 280
  274 --- 285
  274 x--> 281
  276 --- 277
  276 --- 278
  276 --- 279
  276 --- 280
  276 --- 281
  276 --- 282
  276 --- 283
  276 --- 284
  276 --- 285
  276 --- 286
  283 <--x 278
  283 <--x 282
  284 <--x 279
  284 <--x 282
  285 <--x 280
  285 <--x 282
  286 <--x 287
  289 --- 290
  290 --- 291
  290 --- 292
  290 --- 293
  290 --- 294
  290 ---- 296
  290 --- 295
  291 --- 297
  291 --- 306
  291 x--> 301
  292 --- 298
  292 --- 303
  292 x--> 301
  293 --- 299
  293 --- 304
  293 x--> 301
  294 --- 300
  294 --- 305
  294 x--> 301
  296 --- 297
  296 --- 298
  296 --- 299
  296 --- 300
  296 --- 301
  296 --- 302
  296 --- 303
  296 --- 304
  296 --- 305
  296 --- 306
  303 <--x 298
  303 <--x 302
  304 <--x 299
  304 <--x 302
  305 <--x 300
  305 <--x 302
  306 <--x 307
  14 <--x 309
  42 <--x 310
  42 <--x 311
  88 <--x 312