# No. 404 (Brown 1868): "Another cyclograph. The elastic arched bar is made half the depth at the ends that it is at the middle, and is formed so that
# its outer edge coincides with a true circular arc when bent to its greatest extent. Three points in the required arc being given, the bar is bent
# to them by means of the screw, each end being confined to the straight bar by means of a small roller."
#
# Model (cm, Brown's elevation; it lies on the drawing, so no gravity): the straight bar with an upright at each end carrying a small roller, and the
# screw working in a nut in the bar's middle. The elastic arched bar is 15 short pieces jointed end to end, each joint with the bar's stiffness
# there (a spring); the bar's depth halves from the middle to the ends, and its stiffness grows from the ends to the middle as the bending moment
# does (KS 30 N m/rad times the distance from the end over the half-span), so that it bends to a true arc. The screw (the one driven joint,
# 9 rpm) rises in its nut by its threads and pushes up the arch's middle; each end piece's upper edge bears under its roller. Contact only: threads
# in the nut, the screw's head under the arch, the ends' upper edges under the rollers. Generator: opencode-runs/batch13/gen404.py.
number: 404
slug: elastic-bar-cyclograph
name: Cyclograph with an elastic arched bar
brown: "Another cyclograph. The elastic arched bar is made half the depth at the ends that it is at the middle, and is formed so that its outer edge coincides with a true circular arc when bent to its greatest extent. Three points in the required arc being given, the bar is bent to them by means of the screw, each end being confined to the straight bar by means of a small roller."
units: cm
sim:
  timestep: 0.0002
  integrator: implicitfast
  iterations: 100
  solver: CG
  multiccd: true
  duration_s: 10.5
  floor: false
  gravity: 0
bodies:
  - id: bar
    shape: part
    pos: [0, 0, 0]
    fixed: true
    friction: 0.1
    color: "#d8ccb0"
    pieces:
      - {kind: poly, points: [[-23.5, -3.6], [-1.9, -3.6], [-1.9, -1.0], [-23.5, -1.0]], y: [-0.9, 0.9]}   # the straight bar
      - {kind: poly, points: [[1.9, -3.6], [23.5, -3.6], [23.5, -1.0], [1.9, -1.0]], y: [-0.9, 0.9]}
      - {kind: poly, points: [[-1.9, -3.6], [1.9, -3.6], [1.9, -1.0], [-1.9, -1.0]], y: [0.9, 1.9]}   # behind the nut
      - {kind: poly, points: [[-23.5, -1.05], [-17.5, -1.05], [-17.5, -1.0], [-23.5, -1.0]], y: [-0.9, 0.9], collide: 2}   # the bar's face under the ends
      - {kind: poly, points: [[17.5, -1.05], [23.5, -1.05], [23.5, -1.0], [17.5, -1.0]], y: [-0.9, 0.9], collide: 2}
      - {kind: poly, points: [[-24.4, -4.4], [-23.4, -4.4], [-23.4, 1.6], [-24.4, 1.6]], y: [-1.5, 1.5], color: "#c9bfa8"}   # the upright carrying the roller
      - {kind: poly, points: [[23.4, -4.4], [24.4, -4.4], [24.4, 1.6], [23.4, 1.6]], y: [-1.5, 1.5], color: "#c9bfa8"}
      - {kind: poly, points: [[-24.4, 0.7186], [-19.8, 0.7186], [-19.8, 1.2186], [-24.4, 1.2186]], y: [-1.5, -1.1], color: "#c9bfa8"}   # the roller's spindle-strap
      - {kind: poly, points: [[19.8, 0.7186], [24.4, 0.7186], [24.4, 1.2186], [19.8, 1.2186]], y: [-1.5, -1.1], color: "#c9bfa8"}
      - {kind: rod, from: [-1.9, -1.2, -1.0], to: [1.9, -1.2, -1.0], radius: 0.05, color: "#8f8a80"}
      - {kind: loft, a: [[-0.3512, 1.7654, -3.26], [-0.3512, 1.7654, -1.84], [-0.2048, 1.0298, -2.215], [-0.2048, 1.0298, -2.885]], b: [[-0.7911, 1.6168, -3.1941], [-0.7911, 1.6168, -1.7741], [-0.4615, 0.9431, -2.1491], [-0.4615, 0.9431, -2.8191]], collide: 2}
      - {kind: loft, a: [[-0.7911, 1.6168, -3.1941], [-0.7911, 1.6168, -1.7741], [-0.4615, 0.9431, -2.1491], [-0.4615, 0.9431, -2.8191]], b: [[-1.1785, 1.3606, -3.1282], [-1.1785, 1.3606, -1.7082], [-0.6874, 0.7937, -2.0832], [-0.6874, 0.7937, -2.7532]], collide: 2}
      - {kind: loft, a: [[-1.1785, 1.3606, -3.1282], [-1.1785, 1.3606, -1.7082], [-0.6874, 0.7937, -2.0832], [-0.6874, 0.7937, -2.7532]], b: [[-1.4873, 1.0138, -3.0624], [-1.4873, 1.0138, -1.6424], [-0.8676, 0.5914, -2.0174], [-0.8676, 0.5914, -2.6874]], collide: 2}
      - {kind: loft, a: [[-1.4873, 1.0138, -3.0624], [-1.4873, 1.0138, -1.6424], [-0.8676, 0.5914, -2.0174], [-0.8676, 0.5914, -2.6874]], b: [[-1.6972, 0.5995, -2.9965], [-1.6972, 0.5995, -1.5765], [-0.99, 0.3497, -1.9515], [-0.99, 0.3497, -2.6215]], collide: 2}
      - {kind: loft, a: [[-1.6972, 0.5995, -2.9965], [-1.6972, 0.5995, -1.5765], [-0.99, 0.3497, -1.9515], [-0.99, 0.3497, -2.6215]], b: [[-1.7941, 0.1454, -2.9306], [-1.7941, 0.1454, -1.5106], [-1.0466, 0.0848, -1.8856], [-1.0466, 0.0848, -2.5556]], collide: 2}
      - {kind: loft, a: [[-1.7941, 0.1454, -2.9306], [-1.7941, 0.1454, -1.5106], [-1.0466, 0.0848, -1.8856], [-1.0466, 0.0848, -2.5556]], b: [[-1.7716, -0.3185, -2.8647], [-1.7716, -0.3185, -1.4447], [-1.0334, -0.1858, -1.8197], [-1.0334, -0.1858, -2.4897]], collide: 2}
      - {kind: loft, a: [[-1.7716, -0.3185, -2.8647], [-1.7716, -0.3185, -1.4447], [-1.0334, -0.1858, -1.8197], [-1.0334, -0.1858, -2.4897]], b: [[-1.6312, -0.7611, -2.7988], [-1.6312, -0.7611, -1.3788], [-0.9515, -0.444, -1.7538], [-0.9515, -0.444, -2.4238]], collide: 2}
      - {kind: loft, a: [[-1.6312, -0.7611, -2.7988], [-1.6312, -0.7611, -1.3788], [-0.9515, -0.444, -1.7538], [-0.9515, -0.444, -2.4238]], b: [[-1.3821, -1.1531, -2.7329], [-1.3821, -1.1531, -1.3129], [-0.8062, -0.6727, -1.6879], [-0.8062, -0.6727, -2.3579]], collide: 2}
      - {kind: loft, a: [[-1.3821, -1.1531, -2.7329], [-1.3821, -1.1531, -1.3129], [-0.8062, -0.6727, -1.6879], [-0.8062, -0.6727, -2.3579]], b: [[-1.0411, -1.4684, -2.6671], [-1.0411, -1.4684, -1.2471], [-0.6073, -0.8565, -1.6221], [-0.6073, -0.8565, -2.2921]], collide: 2}
      - {kind: loft, a: [[-1.0411, -1.4684, -2.6671], [-1.0411, -1.4684, -1.2471], [-0.6073, -0.8565, -1.6221], [-0.6073, -0.8565, -2.2921]], b: [[-0.6308, -1.6858, -2.6012], [-0.6308, -1.6858, -1.1812], [-0.368, -0.9834, -1.5562], [-0.368, -0.9834, -2.2262]], collide: 2}
      - {kind: loft, a: [[-0.6308, -1.6858, -2.6012], [-0.6308, -1.6858, -1.1812], [-0.368, -0.9834, -1.5562], [-0.368, -0.9834, -2.2262]], b: [[-0.1785, -1.7911, -2.5353], [-0.1785, -1.7911, -1.1153], [-0.1041, -1.0448, -1.4903], [-0.1041, -1.0448, -2.1603]], collide: 2}
      - {kind: loft, a: [[-0.1785, -1.7911, -2.5353], [-0.1785, -1.7911, -1.1153], [-0.1041, -1.0448, -1.4903], [-0.1041, -1.0448, -2.1603]], b: [[0.2857, -1.7772, -2.4694], [0.2857, -1.7772, -1.0494], [0.1667, -1.0367, -1.4244], [0.1667, -1.0367, -2.0944]], collide: 2}
      - {kind: loft, a: [[0.2857, -1.7772, -2.4694], [0.2857, -1.7772, -1.0494], [0.1667, -1.0367, -1.4244], [0.1667, -1.0367, -2.0944]], b: [[0.7309, -1.6449, -2.4035], [0.7309, -1.6449, -0.9835], [0.4263, -0.9596, -1.3585], [0.4263, -0.9596, -2.0285]], collide: 2}
      - {kind: loft, a: [[0.7309, -1.6449, -2.4035], [0.7309, -1.6449, -0.9835], [0.4263, -0.9596, -1.3585], [0.4263, -0.9596, -2.0285]], b: [[1.1274, -1.4032, -2.3376], [1.1274, -1.4032, -0.9176], [0.6576, -0.8185, -1.2926], [0.6576, -0.8185, -1.9626]], collide: 2}
      - {kind: loft, a: [[1.1274, -1.4032, -2.3376], [1.1274, -1.4032, -0.9176], [0.6576, -0.8185, -1.2926], [0.6576, -0.8185, -1.9626]], b: [[1.4489, -1.0681, -2.2718], [1.4489, -1.0681, -0.8518], [0.8452, -0.623, -1.2268], [0.8452, -0.623, -1.8968]], collide: 2}
      - {kind: loft, a: [[1.4489, -1.0681, -2.2718], [1.4489, -1.0681, -0.8518], [0.8452, -0.623, -1.2268], [0.8452, -0.623, -1.8968]], b: [[1.6739, -0.6619, -2.2059], [1.6739, -0.6619, -0.7859], [0.9764, -0.3861, -1.1609], [0.9764, -0.3861, -1.8309]], collide: 2}
      - {kind: loft, a: [[1.6739, -0.6619, -2.2059], [1.6739, -0.6619, -0.7859], [0.9764, -0.3861, -1.1609], [0.9764, -0.3861, -1.8309]], b: [[1.7875, -0.2116, -2.14], [1.7875, -0.2116, -0.72], [1.0427, -0.1234, -1.095], [1.0427, -0.1234, -1.765]], collide: 2}
      - {kind: loft, a: [[1.7875, -0.2116, -2.14], [1.7875, -0.2116, -0.72], [1.0427, -0.1234, -1.095], [1.0427, -0.1234, -1.765]], b: [[1.7822, 0.2528, -2.0741], [1.7822, 0.2528, -0.6541], [1.0396, 0.1475, -1.0291], [1.0396, 0.1475, -1.6991]], collide: 2}
      - {kind: loft, a: [[1.7822, 0.2528, -2.0741], [1.7822, 0.2528, -0.6541], [1.0396, 0.1475, -1.0291], [1.0396, 0.1475, -1.6991]], b: [[1.6582, 0.7003, -2.0082], [1.6582, 0.7003, -0.5882], [0.9673, 0.4085, -0.9632], [0.9673, 0.4085, -1.6332]], collide: 2}
      - {kind: loft, a: [[1.6582, 0.7003, -2.0082], [1.6582, 0.7003, -0.5882], [0.9673, 0.4085, -0.9632], [0.9673, 0.4085, -1.6332]], b: [[1.4238, 1.1013, -1.9424], [1.4238, 1.1013, -0.5224], [0.8306, 0.6424, -0.8974], [0.8306, 0.6424, -1.5674]], collide: 2}
      - {kind: loft, a: [[1.4238, 1.1013, -1.9424], [1.4238, 1.1013, -0.5224], [0.8306, 0.6424, -0.8974], [0.8306, 0.6424, -1.5674]], b: [[1.0947, 1.4289, -1.8765], [1.0947, 1.4289, -0.4565], [0.6386, 0.8335, -0.8315], [0.6386, 0.8335, -1.5015]], collide: 2}
      - {kind: loft, a: [[1.0947, 1.4289, -1.8765], [1.0947, 1.4289, -0.4565], [0.6386, 0.8335, -0.8315], [0.6386, 0.8335, -1.5015]], b: [[0.6927, 1.6614, -1.8106], [0.6927, 1.6614, -0.3906], [0.4041, 0.9691, -0.7656], [0.4041, 0.9691, -1.4356]], collide: 2}
      - {kind: loft, a: [[0.6927, 1.6614, -1.8106], [0.6927, 1.6614, -0.3906], [0.4041, 0.9691, -0.7656], [0.4041, 0.9691, -1.4356]], b: [[0.2446, 1.7833, -1.7447], [0.2446, 1.7833, -0.3247], [0.1427, 1.0403, -0.6997], [0.1427, 1.0403, -1.3697]], collide: 2}
      - {kind: loft, a: [[0.2446, 1.7833, -1.7447], [0.2446, 1.7833, -0.3247], [0.1427, 1.0403, -0.6997], [0.1427, 1.0403, -1.3697]], b: [[-0.2198, 1.7865, -1.6788], [-0.2198, 1.7865, -0.2588], [-0.1282, 1.0421, -0.6338], [-0.1282, 1.0421, -1.3038]], collide: 2}
      - {kind: loft, a: [[-0.2198, 1.7865, -1.6788], [-0.2198, 1.7865, -0.2588], [-0.1282, 1.0421, -0.6338], [-0.1282, 1.0421, -1.3038]], b: [[-0.6696, 1.6708, -1.6129], [-0.6696, 1.6708, -0.1929], [-0.3906, 0.9746, -0.5679], [-0.3906, 0.9746, -1.2379]], collide: 2}
      - {kind: loft, a: [[-0.6696, 1.6708, -1.6129], [-0.6696, 1.6708, -0.1929], [-0.3906, 0.9746, -0.5679], [-0.3906, 0.9746, -1.2379]], b: [[-1.0748, 1.4439, -1.5471], [-1.0748, 1.4439, -0.1271], [-0.6269, 0.8423, -0.5021], [-0.6269, 0.8423, -1.1721]], collide: 2}
      - {kind: loft, a: [[-1.0748, 1.4439, -1.5471], [-1.0748, 1.4439, -0.1271], [-0.6269, 0.8423, -0.5021], [-0.6269, 0.8423, -1.1721]], b: [[-1.4084, 1.1209, -1.4812], [-1.4084, 1.1209, -0.0612], [-0.8216, 0.6539, -0.4362], [-0.8216, 0.6539, -1.1062]], collide: 2}
      - {kind: loft, a: [[-1.4084, 1.1209, -1.4812], [-1.4084, 1.1209, -0.0612], [-0.8216, 0.6539, -0.4362], [-0.8216, 0.6539, -1.1062]], b: [[-1.6483, 0.7233, -1.4153], [-1.6483, 0.7233, 0.0047], [-0.9615, 0.4219, -0.3703], [-0.9615, 0.4219, -1.0403]], collide: 2}
      - {kind: loft, a: [[-1.6483, 0.7233, -1.4153], [-1.6483, 0.7233, 0.0047], [-0.9615, 0.4219, -0.3703], [-0.9615, 0.4219, -1.0403]], b: [[-1.7785, 0.2775, -1.3494], [-1.7785, 0.2775, 0.0706], [-1.0374, 0.1619, -0.3044], [-1.0374, 0.1619, -0.9744]], collide: 2}
      - {kind: loft, a: [[-1.7785, 0.2775, -1.3494], [-1.7785, 0.2775, 0.0706], [-1.0374, 0.1619, -0.3044], [-1.0374, 0.1619, -0.9744]], b: [[-1.7903, -0.1868, -1.2835], [-1.7903, -0.1868, 0.1365], [-1.0443, -0.109, -0.2385], [-1.0443, -0.109, -0.9085]], collide: 2}
      - {kind: loft, a: [[-1.7903, -0.1868, -1.2835], [-1.7903, -0.1868, 0.1365], [-1.0443, -0.109, -0.2385], [-1.0443, -0.109, -0.9085]], b: [[-1.6829, -0.6386, -1.2176], [-1.6829, -0.6386, 0.2024], [-0.9817, -0.3725, -0.1726], [-0.9817, -0.3725, -0.8426]], collide: 2}
      - {kind: loft, a: [[-1.6829, -0.6386, -1.2176], [-1.6829, -0.6386, 0.2024], [-0.9817, -0.3725, -0.1726], [-0.9817, -0.3725, -0.8426]], b: [[-1.4635, -1.0479, -1.1518], [-1.4635, -1.0479, 0.2682], [-0.8537, -0.6113, -0.1068], [-0.8537, -0.6113, -0.7768]], collide: 2}
      - {kind: loft, a: [[-1.4635, -1.0479, -1.1518], [-1.4635, -1.0479, 0.2682], [-0.8537, -0.6113, -0.1068], [-0.8537, -0.6113, -0.7768]], b: [[-1.1467, -1.3875, -1.0859], [-1.1467, -1.3875, 0.3341], [-0.6689, -0.8093, -0.0409], [-0.6689, -0.8093, -0.7109]], collide: 2}
      - {kind: loft, a: [[-1.1467, -1.3875, -1.0859], [-1.1467, -1.3875, 0.3341], [-0.6689, -0.8093, -0.0409], [-0.6689, -0.8093, -0.7109]], b: [[-0.7536, -1.6347, -1.02], [-0.7536, -1.6347, 0.4], [-0.4396, -0.9536, 0.025], [-0.4396, -0.9536, -0.645]], collide: 2}
  - {id: car_x, shape: part, pos: [0, 0, 4.01], mass: 0.002, pieces: [{kind: rod, from: [0, -3, 4.01], to: [0, -2.95, 4.01], radius: 0.05}]}
  - {id: car_z, shape: part, pos: [0, 0, 4.01], mount: car_x, mass: 0.002, pieces: [{kind: rod, from: [0, -3, 4.01], to: [0, -2.95, 4.01], radius: 0.05}]}
  - id: arch7
    shape: part
    pos: [0.0, 0, 4.01]
    mount: car_z
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[-1.42, 3.9874], [1.42, 3.9874], [1.4693, 5.5332], [-1.4693, 5.5332]], y: [-0.6, 0.6], collide: 1}
  - id: arch6
    shape: part
    pos: [-1.42, 0, 3.9874]
    mount: arch7
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[-4.2542, 3.8063], [-1.42, 3.9874], [-1.4693, 5.5332], [-4.3918, 5.2397]], y: [-0.6, 0.6], collide: 1}
  - id: arch5
    shape: part
    pos: [-4.2542, 0, 3.8063]
    mount: arch6
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[-7.0711, 3.4449], [-4.2542, 3.8063], [-4.3918, 5.2397], [-7.2829, 4.7613]], y: [-0.6, 0.6], collide: 1}
  - id: arch4
    shape: part
    pos: [-7.0711, 0, 3.4449]
    mount: arch5
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[-9.8593, 2.9047], [-7.0711, 3.4449], [-7.2829, 4.7613], [-10.1309, 4.1009]], y: [-0.6, 0.6], collide: 1}
  - id: arch3
    shape: part
    pos: [-9.8593, 0, 2.9047]
    mount: arch4
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[-12.6073, 2.1878], [-9.8593, 2.9047], [-10.1309, 4.1009], [-12.9244, 3.262]], y: [-0.6, 0.6], collide: 1}
  - id: arch2
    shape: part
    pos: [-12.6073, 0, 2.1878]
    mount: arch3
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[-15.304, 1.2972], [-12.6073, 2.1878], [-12.9244, 3.262], [-15.6523, 2.2488]], y: [-0.6, 0.6], collide: 1}
  - id: arch1
    shape: part
    pos: [-15.304, 0, 1.2972]
    mount: arch2
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[-17.9385, 0.2365], [-15.304, 1.2972], [-15.6523, 2.2488], [-18.3038, 1.0663]], y: [-0.6, 0.6], collide: 1}
  - id: arch0
    shape: part
    pos: [-17.9385, 0, 0.2365]
    mount: arch1
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[-20.5, -0.99], [-17.9385, 0.2365], [-18.3038, 1.0663], [-20.8683, -0.2798]], y: [-0.6, 0.6], collide: 1}
  - id: arch8
    shape: part
    pos: [1.42, 0, 3.9874]
    mount: arch7
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[1.42, 3.9874], [4.2542, 3.8063], [4.3918, 5.2397], [1.4693, 5.5332]], y: [-0.6, 0.6], collide: 1}
  - id: arch9
    shape: part
    pos: [4.2542, 0, 3.8063]
    mount: arch8
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[4.2542, 3.8063], [7.0711, 3.4449], [7.2829, 4.7613], [4.3918, 5.2397]], y: [-0.6, 0.6], collide: 1}
  - id: arch10
    shape: part
    pos: [7.0711, 0, 3.4449]
    mount: arch9
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[7.0711, 3.4449], [9.8593, 2.9047], [10.1309, 4.1009], [7.2829, 4.7613]], y: [-0.6, 0.6], collide: 1}
  - id: arch11
    shape: part
    pos: [9.8593, 0, 2.9047]
    mount: arch10
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[9.8593, 2.9047], [12.6073, 2.1878], [12.9244, 3.262], [10.1309, 4.1009]], y: [-0.6, 0.6], collide: 1}
  - id: arch12
    shape: part
    pos: [12.6073, 0, 2.1878]
    mount: arch11
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[12.6073, 2.1878], [15.304, 1.2972], [15.6523, 2.2488], [12.9244, 3.262]], y: [-0.6, 0.6], collide: 1}
  - id: arch13
    shape: part
    pos: [15.304, 0, 1.2972]
    mount: arch12
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[15.304, 1.2972], [17.9385, 0.2365], [18.3038, 1.0663], [15.6523, 2.2488]], y: [-0.6, 0.6], collide: 1}
  - id: arch14
    shape: part
    pos: [17.9385, 0, 0.2365]
    mount: arch13
    density: 1100
    friction: 0.1
    color: "#b89a6a"
    pieces:
      - {kind: poly, points: [[17.9385, 0.2365], [20.5, -0.99], [20.8683, -0.2798], [18.3038, 1.0663]], y: [-0.6, 0.6], collide: 1}
  - id: screw_c
    shape: part
    pos: [0, 0, 0]
    mass: 0.002
    pieces: [{kind: rod, from: [0, -3, -14], to: [0, -2.95, -14], radius: 0.05}]
  - id: screw
    shape: part
    pos: [0, 0, 0]
    mount: screw_c
    density: 7800
    friction: 0.1
    color: "#9a948a"
    pieces:
      - {kind: rod, from: [0, 0, -7.6], to: [0, 0, 2.8], radius: 1.0}   # the screw's core
      - {kind: rod, from: [0, 0, 1.9], to: [0, 0, 3.0], radius: 1.4, color: "#c9bfa8"}   # its collar
      - {kind: rod, from: [0, 0, 3.1], to: [0, 0, 3.4], radius: 0.6, capsule: true, collide: 2}   # its round head, under the arch's middle
      - {kind: rod, from: [0, 0, -7.6], to: [0, 0, -10.2], radius: 0.7}   # its stem
      - {kind: poly, points: [[-3.0, -10.6], [-1.0, -10.0], [1.0, -10.0], [3.0, -10.6], [3.0, -12.2], [1.0, -11.4], [-1.0, -11.4], [-3.0, -12.2]], y: [-0.4, 0.4], color: "#c9bfa8"}   # the thumb-piece
      - {kind: loft, a: [[0.95, 0.0, -7.475], [0.95, 0.0, -6.525], [1.6, 0.0, -6.85], [1.6, 0.0, -7.15]], b: [[0.9176, 0.2459, -7.4083], [0.9176, 0.2459, -6.4583], [1.5455, 0.4141, -6.7833], [1.5455, 0.4141, -7.0833]], collide: 1}
      - {kind: loft, a: [[0.9176, 0.2459, -7.4083], [0.9176, 0.2459, -6.4583], [1.5455, 0.4141, -6.7833], [1.5455, 0.4141, -7.0833]], b: [[0.8227, 0.475, -7.3417], [0.8227, 0.475, -6.3917], [1.3856, 0.8, -6.7167], [1.3856, 0.8, -7.0167]], collide: 1}
      - {kind: loft, a: [[0.8227, 0.475, -7.3417], [0.8227, 0.475, -6.3917], [1.3856, 0.8, -6.7167], [1.3856, 0.8, -7.0167]], b: [[0.6718, 0.6718, -7.275], [0.6718, 0.6718, -6.325], [1.1314, 1.1314, -6.65], [1.1314, 1.1314, -6.95]], collide: 1}
      - {kind: loft, a: [[0.6718, 0.6718, -7.275], [0.6718, 0.6718, -6.325], [1.1314, 1.1314, -6.65], [1.1314, 1.1314, -6.95]], b: [[0.475, 0.8227, -7.2083], [0.475, 0.8227, -6.2583], [0.8, 1.3856, -6.5833], [0.8, 1.3856, -6.8833]], collide: 1}
      - {kind: loft, a: [[0.475, 0.8227, -7.2083], [0.475, 0.8227, -6.2583], [0.8, 1.3856, -6.5833], [0.8, 1.3856, -6.8833]], b: [[0.2459, 0.9176, -7.1417], [0.2459, 0.9176, -6.1917], [0.4141, 1.5455, -6.5167], [0.4141, 1.5455, -6.8167]], collide: 1}
      - {kind: loft, a: [[0.2459, 0.9176, -7.1417], [0.2459, 0.9176, -6.1917], [0.4141, 1.5455, -6.5167], [0.4141, 1.5455, -6.8167]], b: [[0.0, 0.95, -7.075], [0.0, 0.95, -6.125], [0.0, 1.6, -6.45], [0.0, 1.6, -6.75]], collide: 1}
      - {kind: loft, a: [[0.0, 0.95, -7.075], [0.0, 0.95, -6.125], [0.0, 1.6, -6.45], [0.0, 1.6, -6.75]], b: [[-0.2459, 0.9176, -7.0083], [-0.2459, 0.9176, -6.0583], [-0.4141, 1.5455, -6.3833], [-0.4141, 1.5455, -6.6833]], collide: 1}
      - {kind: loft, a: [[-0.2459, 0.9176, -7.0083], [-0.2459, 0.9176, -6.0583], [-0.4141, 1.5455, -6.3833], [-0.4141, 1.5455, -6.6833]], b: [[-0.475, 0.8227, -6.9417], [-0.475, 0.8227, -5.9917], [-0.8, 1.3856, -6.3167], [-0.8, 1.3856, -6.6167]], collide: 1}
      - {kind: loft, a: [[-0.475, 0.8227, -6.9417], [-0.475, 0.8227, -5.9917], [-0.8, 1.3856, -6.3167], [-0.8, 1.3856, -6.6167]], b: [[-0.6718, 0.6718, -6.875], [-0.6718, 0.6718, -5.925], [-1.1314, 1.1314, -6.25], [-1.1314, 1.1314, -6.55]], collide: 1}
      - {kind: loft, a: [[-0.6718, 0.6718, -6.875], [-0.6718, 0.6718, -5.925], [-1.1314, 1.1314, -6.25], [-1.1314, 1.1314, -6.55]], b: [[-0.8227, 0.475, -6.8083], [-0.8227, 0.475, -5.8583], [-1.3856, 0.8, -6.1833], [-1.3856, 0.8, -6.4833]], collide: 1}
      - {kind: loft, a: [[-0.8227, 0.475, -6.8083], [-0.8227, 0.475, -5.8583], [-1.3856, 0.8, -6.1833], [-1.3856, 0.8, -6.4833]], b: [[-0.9176, 0.2459, -6.7417], [-0.9176, 0.2459, -5.7917], [-1.5455, 0.4141, -6.1167], [-1.5455, 0.4141, -6.4167]], collide: 1}
      - {kind: loft, a: [[-0.9176, 0.2459, -6.7417], [-0.9176, 0.2459, -5.7917], [-1.5455, 0.4141, -6.1167], [-1.5455, 0.4141, -6.4167]], b: [[-0.95, 0.0, -6.675], [-0.95, 0.0, -5.725], [-1.6, 0.0, -6.05], [-1.6, 0.0, -6.35]], collide: 1}
      - {kind: loft, a: [[-0.95, 0.0, -6.675], [-0.95, 0.0, -5.725], [-1.6, 0.0, -6.05], [-1.6, 0.0, -6.35]], b: [[-0.9176, -0.2459, -6.6083], [-0.9176, -0.2459, -5.6583], [-1.5455, -0.4141, -5.9833], [-1.5455, -0.4141, -6.2833]], collide: 1}
      - {kind: loft, a: [[-0.9176, -0.2459, -6.6083], [-0.9176, -0.2459, -5.6583], [-1.5455, -0.4141, -5.9833], [-1.5455, -0.4141, -6.2833]], b: [[-0.8227, -0.475, -6.5417], [-0.8227, -0.475, -5.5917], [-1.3856, -0.8, -5.9167], [-1.3856, -0.8, -6.2167]], collide: 1}
      - {kind: loft, a: [[-0.8227, -0.475, -6.5417], [-0.8227, -0.475, -5.5917], [-1.3856, -0.8, -5.9167], [-1.3856, -0.8, -6.2167]], b: [[-0.6718, -0.6718, -6.475], [-0.6718, -0.6718, -5.525], [-1.1314, -1.1314, -5.85], [-1.1314, -1.1314, -6.15]], collide: 1}
      - {kind: loft, a: [[-0.6718, -0.6718, -6.475], [-0.6718, -0.6718, -5.525], [-1.1314, -1.1314, -5.85], [-1.1314, -1.1314, -6.15]], b: [[-0.475, -0.8227, -6.4083], [-0.475, -0.8227, -5.4583], [-0.8, -1.3856, -5.7833], [-0.8, -1.3856, -6.0833]], collide: 1}
      - {kind: loft, a: [[-0.475, -0.8227, -6.4083], [-0.475, -0.8227, -5.4583], [-0.8, -1.3856, -5.7833], [-0.8, -1.3856, -6.0833]], b: [[-0.2459, -0.9176, -6.3417], [-0.2459, -0.9176, -5.3917], [-0.4141, -1.5455, -5.7167], [-0.4141, -1.5455, -6.0167]], collide: 1}
      - {kind: loft, a: [[-0.2459, -0.9176, -6.3417], [-0.2459, -0.9176, -5.3917], [-0.4141, -1.5455, -5.7167], [-0.4141, -1.5455, -6.0167]], b: [[-0.0, -0.95, -6.275], [-0.0, -0.95, -5.325], [-0.0, -1.6, -5.65], [-0.0, -1.6, -5.95]], collide: 1}
      - {kind: loft, a: [[-0.0, -0.95, -6.275], [-0.0, -0.95, -5.325], [-0.0, -1.6, -5.65], [-0.0, -1.6, -5.95]], b: [[0.2459, -0.9176, -6.2083], [0.2459, -0.9176, -5.2583], [0.4141, -1.5455, -5.5833], [0.4141, -1.5455, -5.8833]], collide: 1}
      - {kind: loft, a: [[0.2459, -0.9176, -6.2083], [0.2459, -0.9176, -5.2583], [0.4141, -1.5455, -5.5833], [0.4141, -1.5455, -5.8833]], b: [[0.475, -0.8227, -6.1417], [0.475, -0.8227, -5.1917], [0.8, -1.3856, -5.5167], [0.8, -1.3856, -5.8167]], collide: 1}
      - {kind: loft, a: [[0.475, -0.8227, -6.1417], [0.475, -0.8227, -5.1917], [0.8, -1.3856, -5.5167], [0.8, -1.3856, -5.8167]], b: [[0.6718, -0.6718, -6.075], [0.6718, -0.6718, -5.125], [1.1314, -1.1314, -5.45], [1.1314, -1.1314, -5.75]], collide: 1}
      - {kind: loft, a: [[0.6718, -0.6718, -6.075], [0.6718, -0.6718, -5.125], [1.1314, -1.1314, -5.45], [1.1314, -1.1314, -5.75]], b: [[0.8227, -0.475, -6.0083], [0.8227, -0.475, -5.0583], [1.3856, -0.8, -5.3833], [1.3856, -0.8, -5.6833]], collide: 1}
      - {kind: loft, a: [[0.8227, -0.475, -6.0083], [0.8227, -0.475, -5.0583], [1.3856, -0.8, -5.3833], [1.3856, -0.8, -5.6833]], b: [[0.9176, -0.2459, -5.9417], [0.9176, -0.2459, -4.9917], [1.5455, -0.4141, -5.3167], [1.5455, -0.4141, -5.6167]], collide: 1}
      - {kind: loft, a: [[0.9176, -0.2459, -5.9417], [0.9176, -0.2459, -4.9917], [1.5455, -0.4141, -5.3167], [1.5455, -0.4141, -5.6167]], b: [[0.95, -0.0, -5.875], [0.95, -0.0, -4.925], [1.6, -0.0, -5.25], [1.6, -0.0, -5.55]], collide: 1}
      - {kind: loft, a: [[0.95, -0.0, -5.875], [0.95, -0.0, -4.925], [1.6, -0.0, -5.25], [1.6, -0.0, -5.55]], b: [[0.9176, 0.2459, -5.8083], [0.9176, 0.2459, -4.8583], [1.5455, 0.4141, -5.1833], [1.5455, 0.4141, -5.4833]], collide: 1}
      - {kind: loft, a: [[0.9176, 0.2459, -5.8083], [0.9176, 0.2459, -4.8583], [1.5455, 0.4141, -5.1833], [1.5455, 0.4141, -5.4833]], b: [[0.8227, 0.475, -5.7417], [0.8227, 0.475, -4.7917], [1.3856, 0.8, -5.1167], [1.3856, 0.8, -5.4167]], collide: 1}
      - {kind: loft, a: [[0.8227, 0.475, -5.7417], [0.8227, 0.475, -4.7917], [1.3856, 0.8, -5.1167], [1.3856, 0.8, -5.4167]], b: [[0.6718, 0.6718, -5.675], [0.6718, 0.6718, -4.725], [1.1314, 1.1314, -5.05], [1.1314, 1.1314, -5.35]], collide: 1}
      - {kind: loft, a: [[0.6718, 0.6718, -5.675], [0.6718, 0.6718, -4.725], [1.1314, 1.1314, -5.05], [1.1314, 1.1314, -5.35]], b: [[0.475, 0.8227, -5.6083], [0.475, 0.8227, -4.6583], [0.8, 1.3856, -4.9833], [0.8, 1.3856, -5.2833]], collide: 1}
      - {kind: loft, a: [[0.475, 0.8227, -5.6083], [0.475, 0.8227, -4.6583], [0.8, 1.3856, -4.9833], [0.8, 1.3856, -5.2833]], b: [[0.2459, 0.9176, -5.5417], [0.2459, 0.9176, -4.5917], [0.4141, 1.5455, -4.9167], [0.4141, 1.5455, -5.2167]], collide: 1}
      - {kind: loft, a: [[0.2459, 0.9176, -5.5417], [0.2459, 0.9176, -4.5917], [0.4141, 1.5455, -4.9167], [0.4141, 1.5455, -5.2167]], b: [[0.0, 0.95, -5.475], [0.0, 0.95, -4.525], [0.0, 1.6, -4.85], [0.0, 1.6, -5.15]], collide: 1}
      - {kind: loft, a: [[0.0, 0.95, -5.475], [0.0, 0.95, -4.525], [0.0, 1.6, -4.85], [0.0, 1.6, -5.15]], b: [[-0.2459, 0.9176, -5.4083], [-0.2459, 0.9176, -4.4583], [-0.4141, 1.5455, -4.7833], [-0.4141, 1.5455, -5.0833]], collide: 1}
      - {kind: loft, a: [[-0.2459, 0.9176, -5.4083], [-0.2459, 0.9176, -4.4583], [-0.4141, 1.5455, -4.7833], [-0.4141, 1.5455, -5.0833]], b: [[-0.475, 0.8227, -5.3417], [-0.475, 0.8227, -4.3917], [-0.8, 1.3856, -4.7167], [-0.8, 1.3856, -5.0167]], collide: 1}
      - {kind: loft, a: [[-0.475, 0.8227, -5.3417], [-0.475, 0.8227, -4.3917], [-0.8, 1.3856, -4.7167], [-0.8, 1.3856, -5.0167]], b: [[-0.6718, 0.6718, -5.275], [-0.6718, 0.6718, -4.325], [-1.1314, 1.1314, -4.65], [-1.1314, 1.1314, -4.95]], collide: 1}
      - {kind: loft, a: [[-0.6718, 0.6718, -5.275], [-0.6718, 0.6718, -4.325], [-1.1314, 1.1314, -4.65], [-1.1314, 1.1314, -4.95]], b: [[-0.8227, 0.475, -5.2083], [-0.8227, 0.475, -4.2583], [-1.3856, 0.8, -4.5833], [-1.3856, 0.8, -4.8833]], collide: 1}
      - {kind: loft, a: [[-0.8227, 0.475, -5.2083], [-0.8227, 0.475, -4.2583], [-1.3856, 0.8, -4.5833], [-1.3856, 0.8, -4.8833]], b: [[-0.9176, 0.2459, -5.1417], [-0.9176, 0.2459, -4.1917], [-1.5455, 0.4141, -4.5167], [-1.5455, 0.4141, -4.8167]], collide: 1}
      - {kind: loft, a: [[-0.9176, 0.2459, -5.1417], [-0.9176, 0.2459, -4.1917], [-1.5455, 0.4141, -4.5167], [-1.5455, 0.4141, -4.8167]], b: [[-0.95, 0.0, -5.075], [-0.95, 0.0, -4.125], [-1.6, 0.0, -4.45], [-1.6, 0.0, -4.75]], collide: 1}
      - {kind: loft, a: [[-0.95, 0.0, -5.075], [-0.95, 0.0, -4.125], [-1.6, 0.0, -4.45], [-1.6, 0.0, -4.75]], b: [[-0.9176, -0.2459, -5.0083], [-0.9176, -0.2459, -4.0583], [-1.5455, -0.4141, -4.3833], [-1.5455, -0.4141, -4.6833]], collide: 1}
      - {kind: loft, a: [[-0.9176, -0.2459, -5.0083], [-0.9176, -0.2459, -4.0583], [-1.5455, -0.4141, -4.3833], [-1.5455, -0.4141, -4.6833]], b: [[-0.8227, -0.475, -4.9417], [-0.8227, -0.475, -3.9917], [-1.3856, -0.8, -4.3167], [-1.3856, -0.8, -4.6167]], collide: 1}
      - {kind: loft, a: [[-0.8227, -0.475, -4.9417], [-0.8227, -0.475, -3.9917], [-1.3856, -0.8, -4.3167], [-1.3856, -0.8, -4.6167]], b: [[-0.6718, -0.6718, -4.875], [-0.6718, -0.6718, -3.925], [-1.1314, -1.1314, -4.25], [-1.1314, -1.1314, -4.55]], collide: 1}
      - {kind: loft, a: [[-0.6718, -0.6718, -4.875], [-0.6718, -0.6718, -3.925], [-1.1314, -1.1314, -4.25], [-1.1314, -1.1314, -4.55]], b: [[-0.475, -0.8227, -4.8083], [-0.475, -0.8227, -3.8583], [-0.8, -1.3856, -4.1833], [-0.8, -1.3856, -4.4833]], collide: 1}
      - {kind: loft, a: [[-0.475, -0.8227, -4.8083], [-0.475, -0.8227, -3.8583], [-0.8, -1.3856, -4.1833], [-0.8, -1.3856, -4.4833]], b: [[-0.2459, -0.9176, -4.7417], [-0.2459, -0.9176, -3.7917], [-0.4141, -1.5455, -4.1167], [-0.4141, -1.5455, -4.4167]], collide: 1}
      - {kind: loft, a: [[-0.2459, -0.9176, -4.7417], [-0.2459, -0.9176, -3.7917], [-0.4141, -1.5455, -4.1167], [-0.4141, -1.5455, -4.4167]], b: [[-0.0, -0.95, -4.675], [-0.0, -0.95, -3.725], [-0.0, -1.6, -4.05], [-0.0, -1.6, -4.35]], collide: 1}
      - {kind: loft, a: [[-0.0, -0.95, -4.675], [-0.0, -0.95, -3.725], [-0.0, -1.6, -4.05], [-0.0, -1.6, -4.35]], b: [[0.2459, -0.9176, -4.6083], [0.2459, -0.9176, -3.6583], [0.4141, -1.5455, -3.9833], [0.4141, -1.5455, -4.2833]], collide: 1}
      - {kind: loft, a: [[0.2459, -0.9176, -4.6083], [0.2459, -0.9176, -3.6583], [0.4141, -1.5455, -3.9833], [0.4141, -1.5455, -4.2833]], b: [[0.475, -0.8227, -4.5417], [0.475, -0.8227, -3.5917], [0.8, -1.3856, -3.9167], [0.8, -1.3856, -4.2167]], collide: 1}
      - {kind: loft, a: [[0.475, -0.8227, -4.5417], [0.475, -0.8227, -3.5917], [0.8, -1.3856, -3.9167], [0.8, -1.3856, -4.2167]], b: [[0.6718, -0.6718, -4.475], [0.6718, -0.6718, -3.525], [1.1314, -1.1314, -3.85], [1.1314, -1.1314, -4.15]], collide: 1}
      - {kind: loft, a: [[0.6718, -0.6718, -4.475], [0.6718, -0.6718, -3.525], [1.1314, -1.1314, -3.85], [1.1314, -1.1314, -4.15]], b: [[0.8227, -0.475, -4.4083], [0.8227, -0.475, -3.4583], [1.3856, -0.8, -3.7833], [1.3856, -0.8, -4.0833]], collide: 1}
      - {kind: loft, a: [[0.8227, -0.475, -4.4083], [0.8227, -0.475, -3.4583], [1.3856, -0.8, -3.7833], [1.3856, -0.8, -4.0833]], b: [[0.9176, -0.2459, -4.3417], [0.9176, -0.2459, -3.3917], [1.5455, -0.4141, -3.7167], [1.5455, -0.4141, -4.0167]], collide: 1}
      - {kind: loft, a: [[0.9176, -0.2459, -4.3417], [0.9176, -0.2459, -3.3917], [1.5455, -0.4141, -3.7167], [1.5455, -0.4141, -4.0167]], b: [[0.95, -0.0, -4.275], [0.95, -0.0, -3.325], [1.6, -0.0, -3.65], [1.6, -0.0, -3.95]], collide: 1}
      - {kind: loft, a: [[0.95, -0.0, -4.275], [0.95, -0.0, -3.325], [1.6, -0.0, -3.65], [1.6, -0.0, -3.95]], b: [[0.9176, 0.2459, -4.2083], [0.9176, 0.2459, -3.2583], [1.5455, 0.4141, -3.5833], [1.5455, 0.4141, -3.8833]], collide: 1}
      - {kind: loft, a: [[0.9176, 0.2459, -4.2083], [0.9176, 0.2459, -3.2583], [1.5455, 0.4141, -3.5833], [1.5455, 0.4141, -3.8833]], b: [[0.8227, 0.475, -4.1417], [0.8227, 0.475, -3.1917], [1.3856, 0.8, -3.5167], [1.3856, 0.8, -3.8167]], collide: 1}
      - {kind: loft, a: [[0.8227, 0.475, -4.1417], [0.8227, 0.475, -3.1917], [1.3856, 0.8, -3.5167], [1.3856, 0.8, -3.8167]], b: [[0.6718, 0.6718, -4.075], [0.6718, 0.6718, -3.125], [1.1314, 1.1314, -3.45], [1.1314, 1.1314, -3.75]], collide: 1}
      - {kind: loft, a: [[0.6718, 0.6718, -4.075], [0.6718, 0.6718, -3.125], [1.1314, 1.1314, -3.45], [1.1314, 1.1314, -3.75]], b: [[0.475, 0.8227, -4.0083], [0.475, 0.8227, -3.0583], [0.8, 1.3856, -3.3833], [0.8, 1.3856, -3.6833]], collide: 1}
      - {kind: loft, a: [[0.475, 0.8227, -4.0083], [0.475, 0.8227, -3.0583], [0.8, 1.3856, -3.3833], [0.8, 1.3856, -3.6833]], b: [[0.2459, 0.9176, -3.9417], [0.2459, 0.9176, -2.9917], [0.4141, 1.5455, -3.3167], [0.4141, 1.5455, -3.6167]], collide: 1}
      - {kind: loft, a: [[0.2459, 0.9176, -3.9417], [0.2459, 0.9176, -2.9917], [0.4141, 1.5455, -3.3167], [0.4141, 1.5455, -3.6167]], b: [[0.0, 0.95, -3.875], [0.0, 0.95, -2.925], [0.0, 1.6, -3.25], [0.0, 1.6, -3.55]], collide: 1}
      - {kind: loft, a: [[0.0, 0.95, -3.875], [0.0, 0.95, -2.925], [0.0, 1.6, -3.25], [0.0, 1.6, -3.55]], b: [[-0.2459, 0.9176, -3.8083], [-0.2459, 0.9176, -2.8583], [-0.4141, 1.5455, -3.1833], [-0.4141, 1.5455, -3.4833]], collide: 1}
      - {kind: loft, a: [[-0.2459, 0.9176, -3.8083], [-0.2459, 0.9176, -2.8583], [-0.4141, 1.5455, -3.1833], [-0.4141, 1.5455, -3.4833]], b: [[-0.475, 0.8227, -3.7417], [-0.475, 0.8227, -2.7917], [-0.8, 1.3856, -3.1167], [-0.8, 1.3856, -3.4167]], collide: 1}
      - {kind: loft, a: [[-0.475, 0.8227, -3.7417], [-0.475, 0.8227, -2.7917], [-0.8, 1.3856, -3.1167], [-0.8, 1.3856, -3.4167]], b: [[-0.6718, 0.6718, -3.675], [-0.6718, 0.6718, -2.725], [-1.1314, 1.1314, -3.05], [-1.1314, 1.1314, -3.35]], collide: 1}
      - {kind: loft, a: [[-0.6718, 0.6718, -3.675], [-0.6718, 0.6718, -2.725], [-1.1314, 1.1314, -3.05], [-1.1314, 1.1314, -3.35]], b: [[-0.8227, 0.475, -3.6083], [-0.8227, 0.475, -2.6583], [-1.3856, 0.8, -2.9833], [-1.3856, 0.8, -3.2833]], collide: 1}
      - {kind: loft, a: [[-0.8227, 0.475, -3.6083], [-0.8227, 0.475, -2.6583], [-1.3856, 0.8, -2.9833], [-1.3856, 0.8, -3.2833]], b: [[-0.9176, 0.2459, -3.5417], [-0.9176, 0.2459, -2.5917], [-1.5455, 0.4141, -2.9167], [-1.5455, 0.4141, -3.2167]], collide: 1}
      - {kind: loft, a: [[-0.9176, 0.2459, -3.5417], [-0.9176, 0.2459, -2.5917], [-1.5455, 0.4141, -2.9167], [-1.5455, 0.4141, -3.2167]], b: [[-0.95, 0.0, -3.475], [-0.95, 0.0, -2.525], [-1.6, 0.0, -2.85], [-1.6, 0.0, -3.15]], collide: 1}
      - {kind: loft, a: [[-0.95, 0.0, -3.475], [-0.95, 0.0, -2.525], [-1.6, 0.0, -2.85], [-1.6, 0.0, -3.15]], b: [[-0.9176, -0.2459, -3.4083], [-0.9176, -0.2459, -2.4583], [-1.5455, -0.4141, -2.7833], [-1.5455, -0.4141, -3.0833]], collide: 1}
      - {kind: loft, a: [[-0.9176, -0.2459, -3.4083], [-0.9176, -0.2459, -2.4583], [-1.5455, -0.4141, -2.7833], [-1.5455, -0.4141, -3.0833]], b: [[-0.8227, -0.475, -3.3417], [-0.8227, -0.475, -2.3917], [-1.3856, -0.8, -2.7167], [-1.3856, -0.8, -3.0167]], collide: 1}
      - {kind: loft, a: [[-0.8227, -0.475, -3.3417], [-0.8227, -0.475, -2.3917], [-1.3856, -0.8, -2.7167], [-1.3856, -0.8, -3.0167]], b: [[-0.6718, -0.6718, -3.275], [-0.6718, -0.6718, -2.325], [-1.1314, -1.1314, -2.65], [-1.1314, -1.1314, -2.95]], collide: 1}
      - {kind: loft, a: [[-0.6718, -0.6718, -3.275], [-0.6718, -0.6718, -2.325], [-1.1314, -1.1314, -2.65], [-1.1314, -1.1314, -2.95]], b: [[-0.475, -0.8227, -3.2083], [-0.475, -0.8227, -2.2583], [-0.8, -1.3856, -2.5833], [-0.8, -1.3856, -2.8833]], collide: 1}
      - {kind: loft, a: [[-0.475, -0.8227, -3.2083], [-0.475, -0.8227, -2.2583], [-0.8, -1.3856, -2.5833], [-0.8, -1.3856, -2.8833]], b: [[-0.2459, -0.9176, -3.1417], [-0.2459, -0.9176, -2.1917], [-0.4141, -1.5455, -2.5167], [-0.4141, -1.5455, -2.8167]], collide: 1}
      - {kind: loft, a: [[-0.2459, -0.9176, -3.1417], [-0.2459, -0.9176, -2.1917], [-0.4141, -1.5455, -2.5167], [-0.4141, -1.5455, -2.8167]], b: [[-0.0, -0.95, -3.075], [-0.0, -0.95, -2.125], [-0.0, -1.6, -2.45], [-0.0, -1.6, -2.75]], collide: 1}
      - {kind: loft, a: [[-0.0, -0.95, -3.075], [-0.0, -0.95, -2.125], [-0.0, -1.6, -2.45], [-0.0, -1.6, -2.75]], b: [[0.2459, -0.9176, -3.0083], [0.2459, -0.9176, -2.0583], [0.4141, -1.5455, -2.3833], [0.4141, -1.5455, -2.6833]], collide: 1}
      - {kind: loft, a: [[0.2459, -0.9176, -3.0083], [0.2459, -0.9176, -2.0583], [0.4141, -1.5455, -2.3833], [0.4141, -1.5455, -2.6833]], b: [[0.475, -0.8227, -2.9417], [0.475, -0.8227, -1.9917], [0.8, -1.3856, -2.3167], [0.8, -1.3856, -2.6167]], collide: 1}
      - {kind: loft, a: [[0.475, -0.8227, -2.9417], [0.475, -0.8227, -1.9917], [0.8, -1.3856, -2.3167], [0.8, -1.3856, -2.6167]], b: [[0.6718, -0.6718, -2.875], [0.6718, -0.6718, -1.925], [1.1314, -1.1314, -2.25], [1.1314, -1.1314, -2.55]], collide: 1}
      - {kind: loft, a: [[0.6718, -0.6718, -2.875], [0.6718, -0.6718, -1.925], [1.1314, -1.1314, -2.25], [1.1314, -1.1314, -2.55]], b: [[0.8227, -0.475, -2.8083], [0.8227, -0.475, -1.8583], [1.3856, -0.8, -2.1833], [1.3856, -0.8, -2.4833]], collide: 1}
      - {kind: loft, a: [[0.8227, -0.475, -2.8083], [0.8227, -0.475, -1.8583], [1.3856, -0.8, -2.1833], [1.3856, -0.8, -2.4833]], b: [[0.9176, -0.2459, -2.7417], [0.9176, -0.2459, -1.7917], [1.5455, -0.4141, -2.1167], [1.5455, -0.4141, -2.4167]], collide: 1}
      - {kind: loft, a: [[0.9176, -0.2459, -2.7417], [0.9176, -0.2459, -1.7917], [1.5455, -0.4141, -2.1167], [1.5455, -0.4141, -2.4167]], b: [[0.95, -0.0, -2.675], [0.95, -0.0, -1.725], [1.6, -0.0, -2.05], [1.6, -0.0, -2.35]], collide: 1}
      - {kind: loft, a: [[0.95, -0.0, -2.675], [0.95, -0.0, -1.725], [1.6, -0.0, -2.05], [1.6, -0.0, -2.35]], b: [[0.9176, 0.2459, -2.6083], [0.9176, 0.2459, -1.6583], [1.5455, 0.4141, -1.9833], [1.5455, 0.4141, -2.2833]], collide: 1}
      - {kind: loft, a: [[0.9176, 0.2459, -2.6083], [0.9176, 0.2459, -1.6583], [1.5455, 0.4141, -1.9833], [1.5455, 0.4141, -2.2833]], b: [[0.8227, 0.475, -2.5417], [0.8227, 0.475, -1.5917], [1.3856, 0.8, -1.9167], [1.3856, 0.8, -2.2167]], collide: 1}
      - {kind: loft, a: [[0.8227, 0.475, -2.5417], [0.8227, 0.475, -1.5917], [1.3856, 0.8, -1.9167], [1.3856, 0.8, -2.2167]], b: [[0.6718, 0.6718, -2.475], [0.6718, 0.6718, -1.525], [1.1314, 1.1314, -1.85], [1.1314, 1.1314, -2.15]], collide: 1}
      - {kind: loft, a: [[0.6718, 0.6718, -2.475], [0.6718, 0.6718, -1.525], [1.1314, 1.1314, -1.85], [1.1314, 1.1314, -2.15]], b: [[0.475, 0.8227, -2.4083], [0.475, 0.8227, -1.4583], [0.8, 1.3856, -1.7833], [0.8, 1.3856, -2.0833]], collide: 1}
      - {kind: loft, a: [[0.475, 0.8227, -2.4083], [0.475, 0.8227, -1.4583], [0.8, 1.3856, -1.7833], [0.8, 1.3856, -2.0833]], b: [[0.2459, 0.9176, -2.3417], [0.2459, 0.9176, -1.3917], [0.4141, 1.5455, -1.7167], [0.4141, 1.5455, -2.0167]], collide: 1}
      - {kind: loft, a: [[0.2459, 0.9176, -2.3417], [0.2459, 0.9176, -1.3917], [0.4141, 1.5455, -1.7167], [0.4141, 1.5455, -2.0167]], b: [[0.0, 0.95, -2.275], [0.0, 0.95, -1.325], [0.0, 1.6, -1.65], [0.0, 1.6, -1.95]], collide: 1}
      - {kind: loft, a: [[0.0, 0.95, -2.275], [0.0, 0.95, -1.325], [0.0, 1.6, -1.65], [0.0, 1.6, -1.95]], b: [[-0.2459, 0.9176, -2.2083], [-0.2459, 0.9176, -1.2583], [-0.4141, 1.5455, -1.5833], [-0.4141, 1.5455, -1.8833]], collide: 1}
      - {kind: loft, a: [[-0.2459, 0.9176, -2.2083], [-0.2459, 0.9176, -1.2583], [-0.4141, 1.5455, -1.5833], [-0.4141, 1.5455, -1.8833]], b: [[-0.475, 0.8227, -2.1417], [-0.475, 0.8227, -1.1917], [-0.8, 1.3856, -1.5167], [-0.8, 1.3856, -1.8167]], collide: 1}
      - {kind: loft, a: [[-0.475, 0.8227, -2.1417], [-0.475, 0.8227, -1.1917], [-0.8, 1.3856, -1.5167], [-0.8, 1.3856, -1.8167]], b: [[-0.6718, 0.6718, -2.075], [-0.6718, 0.6718, -1.125], [-1.1314, 1.1314, -1.45], [-1.1314, 1.1314, -1.75]], collide: 1}
      - {kind: loft, a: [[-0.6718, 0.6718, -2.075], [-0.6718, 0.6718, -1.125], [-1.1314, 1.1314, -1.45], [-1.1314, 1.1314, -1.75]], b: [[-0.8227, 0.475, -2.0083], [-0.8227, 0.475, -1.0583], [-1.3856, 0.8, -1.3833], [-1.3856, 0.8, -1.6833]], collide: 1}
      - {kind: loft, a: [[-0.8227, 0.475, -2.0083], [-0.8227, 0.475, -1.0583], [-1.3856, 0.8, -1.3833], [-1.3856, 0.8, -1.6833]], b: [[-0.9176, 0.2459, -1.9417], [-0.9176, 0.2459, -0.9917], [-1.5455, 0.4141, -1.3167], [-1.5455, 0.4141, -1.6167]], collide: 1}
      - {kind: loft, a: [[-0.9176, 0.2459, -1.9417], [-0.9176, 0.2459, -0.9917], [-1.5455, 0.4141, -1.3167], [-1.5455, 0.4141, -1.6167]], b: [[-0.95, 0.0, -1.875], [-0.95, 0.0, -0.925], [-1.6, 0.0, -1.25], [-1.6, 0.0, -1.55]], collide: 1}
      - {kind: loft, a: [[-0.95, 0.0, -1.875], [-0.95, 0.0, -0.925], [-1.6, 0.0, -1.25], [-1.6, 0.0, -1.55]], b: [[-0.9176, -0.2459, -1.8083], [-0.9176, -0.2459, -0.8583], [-1.5455, -0.4141, -1.1833], [-1.5455, -0.4141, -1.4833]], collide: 1}
      - {kind: loft, a: [[-0.9176, -0.2459, -1.8083], [-0.9176, -0.2459, -0.8583], [-1.5455, -0.4141, -1.1833], [-1.5455, -0.4141, -1.4833]], b: [[-0.8227, -0.475, -1.7417], [-0.8227, -0.475, -0.7917], [-1.3856, -0.8, -1.1167], [-1.3856, -0.8, -1.4167]], collide: 1}
      - {kind: loft, a: [[-0.8227, -0.475, -1.7417], [-0.8227, -0.475, -0.7917], [-1.3856, -0.8, -1.1167], [-1.3856, -0.8, -1.4167]], b: [[-0.6718, -0.6718, -1.675], [-0.6718, -0.6718, -0.725], [-1.1314, -1.1314, -1.05], [-1.1314, -1.1314, -1.35]], collide: 1}
      - {kind: loft, a: [[-0.6718, -0.6718, -1.675], [-0.6718, -0.6718, -0.725], [-1.1314, -1.1314, -1.05], [-1.1314, -1.1314, -1.35]], b: [[-0.475, -0.8227, -1.6083], [-0.475, -0.8227, -0.6583], [-0.8, -1.3856, -0.9833], [-0.8, -1.3856, -1.2833]], collide: 1}
      - {kind: loft, a: [[-0.475, -0.8227, -1.6083], [-0.475, -0.8227, -0.6583], [-0.8, -1.3856, -0.9833], [-0.8, -1.3856, -1.2833]], b: [[-0.2459, -0.9176, -1.5417], [-0.2459, -0.9176, -0.5917], [-0.4141, -1.5455, -0.9167], [-0.4141, -1.5455, -1.2167]], collide: 1}
      - {kind: loft, a: [[-0.2459, -0.9176, -1.5417], [-0.2459, -0.9176, -0.5917], [-0.4141, -1.5455, -0.9167], [-0.4141, -1.5455, -1.2167]], b: [[-0.0, -0.95, -1.475], [-0.0, -0.95, -0.525], [-0.0, -1.6, -0.85], [-0.0, -1.6, -1.15]], collide: 1}
      - {kind: loft, a: [[-0.0, -0.95, -1.475], [-0.0, -0.95, -0.525], [-0.0, -1.6, -0.85], [-0.0, -1.6, -1.15]], b: [[0.2459, -0.9176, -1.4083], [0.2459, -0.9176, -0.4583], [0.4141, -1.5455, -0.7833], [0.4141, -1.5455, -1.0833]], collide: 1}
      - {kind: loft, a: [[0.2459, -0.9176, -1.4083], [0.2459, -0.9176, -0.4583], [0.4141, -1.5455, -0.7833], [0.4141, -1.5455, -1.0833]], b: [[0.475, -0.8227, -1.3417], [0.475, -0.8227, -0.3917], [0.8, -1.3856, -0.7167], [0.8, -1.3856, -1.0167]], collide: 1}
      - {kind: loft, a: [[0.475, -0.8227, -1.3417], [0.475, -0.8227, -0.3917], [0.8, -1.3856, -0.7167], [0.8, -1.3856, -1.0167]], b: [[0.6718, -0.6718, -1.275], [0.6718, -0.6718, -0.325], [1.1314, -1.1314, -0.65], [1.1314, -1.1314, -0.95]], collide: 1}
      - {kind: loft, a: [[0.6718, -0.6718, -1.275], [0.6718, -0.6718, -0.325], [1.1314, -1.1314, -0.65], [1.1314, -1.1314, -0.95]], b: [[0.8227, -0.475, -1.2083], [0.8227, -0.475, -0.2583], [1.3856, -0.8, -0.5833], [1.3856, -0.8, -0.8833]], collide: 1}
      - {kind: loft, a: [[0.8227, -0.475, -1.2083], [0.8227, -0.475, -0.2583], [1.3856, -0.8, -0.5833], [1.3856, -0.8, -0.8833]], b: [[0.9176, -0.2459, -1.1417], [0.9176, -0.2459, -0.1917], [1.5455, -0.4141, -0.5167], [1.5455, -0.4141, -0.8167]], collide: 1}
      - {kind: loft, a: [[0.9176, -0.2459, -1.1417], [0.9176, -0.2459, -0.1917], [1.5455, -0.4141, -0.5167], [1.5455, -0.4141, -0.8167]], b: [[0.95, -0.0, -1.075], [0.95, -0.0, -0.125], [1.6, -0.0, -0.45], [1.6, -0.0, -0.75]], collide: 1}
      - {kind: loft, a: [[0.95, -0.0, -1.075], [0.95, -0.0, -0.125], [1.6, -0.0, -0.45], [1.6, -0.0, -0.75]], b: [[0.9176, 0.2459, -1.0083], [0.9176, 0.2459, -0.0583], [1.5455, 0.4141, -0.3833], [1.5455, 0.4141, -0.6833]], collide: 1}
      - {kind: loft, a: [[0.9176, 0.2459, -1.0083], [0.9176, 0.2459, -0.0583], [1.5455, 0.4141, -0.3833], [1.5455, 0.4141, -0.6833]], b: [[0.8227, 0.475, -0.9417], [0.8227, 0.475, 0.0083], [1.3856, 0.8, -0.3167], [1.3856, 0.8, -0.6167]], collide: 1}
      - {kind: loft, a: [[0.8227, 0.475, -0.9417], [0.8227, 0.475, 0.0083], [1.3856, 0.8, -0.3167], [1.3856, 0.8, -0.6167]], b: [[0.6718, 0.6718, -0.875], [0.6718, 0.6718, 0.075], [1.1314, 1.1314, -0.25], [1.1314, 1.1314, -0.55]], collide: 1}
      - {kind: loft, a: [[0.6718, 0.6718, -0.875], [0.6718, 0.6718, 0.075], [1.1314, 1.1314, -0.25], [1.1314, 1.1314, -0.55]], b: [[0.475, 0.8227, -0.8083], [0.475, 0.8227, 0.1417], [0.8, 1.3856, -0.1833], [0.8, 1.3856, -0.4833]], collide: 1}
      - {kind: loft, a: [[0.475, 0.8227, -0.8083], [0.475, 0.8227, 0.1417], [0.8, 1.3856, -0.1833], [0.8, 1.3856, -0.4833]], b: [[0.2459, 0.9176, -0.7417], [0.2459, 0.9176, 0.2083], [0.4141, 1.5455, -0.1167], [0.4141, 1.5455, -0.4167]], collide: 1}
      - {kind: loft, a: [[0.2459, 0.9176, -0.7417], [0.2459, 0.9176, 0.2083], [0.4141, 1.5455, -0.1167], [0.4141, 1.5455, -0.4167]], b: [[0.0, 0.95, -0.675], [0.0, 0.95, 0.275], [0.0, 1.6, -0.05], [0.0, 1.6, -0.35]], collide: 1}
      - {kind: loft, a: [[0.0, 0.95, -0.675], [0.0, 0.95, 0.275], [0.0, 1.6, -0.05], [0.0, 1.6, -0.35]], b: [[-0.2459, 0.9176, -0.6083], [-0.2459, 0.9176, 0.3417], [-0.4141, 1.5455, 0.0167], [-0.4141, 1.5455, -0.2833]], collide: 1}
      - {kind: loft, a: [[-0.2459, 0.9176, -0.6083], [-0.2459, 0.9176, 0.3417], [-0.4141, 1.5455, 0.0167], [-0.4141, 1.5455, -0.2833]], b: [[-0.475, 0.8227, -0.5417], [-0.475, 0.8227, 0.4083], [-0.8, 1.3856, 0.0833], [-0.8, 1.3856, -0.2167]], collide: 1}
      - {kind: loft, a: [[-0.475, 0.8227, -0.5417], [-0.475, 0.8227, 0.4083], [-0.8, 1.3856, 0.0833], [-0.8, 1.3856, -0.2167]], b: [[-0.6718, 0.6718, -0.475], [-0.6718, 0.6718, 0.475], [-1.1314, 1.1314, 0.15], [-1.1314, 1.1314, -0.15]], collide: 1}
      - {kind: loft, a: [[-0.6718, 0.6718, -0.475], [-0.6718, 0.6718, 0.475], [-1.1314, 1.1314, 0.15], [-1.1314, 1.1314, -0.15]], b: [[-0.8227, 0.475, -0.4083], [-0.8227, 0.475, 0.5417], [-1.3856, 0.8, 0.2167], [-1.3856, 0.8, -0.0833]], collide: 1}
      - {kind: loft, a: [[-0.8227, 0.475, -0.4083], [-0.8227, 0.475, 0.5417], [-1.3856, 0.8, 0.2167], [-1.3856, 0.8, -0.0833]], b: [[-0.9176, 0.2459, -0.3417], [-0.9176, 0.2459, 0.6083], [-1.5455, 0.4141, 0.2833], [-1.5455, 0.4141, -0.0167]], collide: 1}
      - {kind: loft, a: [[-0.9176, 0.2459, -0.3417], [-0.9176, 0.2459, 0.6083], [-1.5455, 0.4141, 0.2833], [-1.5455, 0.4141, -0.0167]], b: [[-0.95, 0.0, -0.275], [-0.95, 0.0, 0.675], [-1.6, 0.0, 0.35], [-1.6, 0.0, 0.05]], collide: 1}
      - {kind: loft, a: [[-0.95, 0.0, -0.275], [-0.95, 0.0, 0.675], [-1.6, 0.0, 0.35], [-1.6, 0.0, 0.05]], b: [[-0.9176, -0.2459, -0.2083], [-0.9176, -0.2459, 0.7417], [-1.5455, -0.4141, 0.4167], [-1.5455, -0.4141, 0.1167]], collide: 1}
      - {kind: loft, a: [[-0.9176, -0.2459, -0.2083], [-0.9176, -0.2459, 0.7417], [-1.5455, -0.4141, 0.4167], [-1.5455, -0.4141, 0.1167]], b: [[-0.8227, -0.475, -0.1417], [-0.8227, -0.475, 0.8083], [-1.3856, -0.8, 0.4833], [-1.3856, -0.8, 0.1833]], collide: 1}
      - {kind: loft, a: [[-0.8227, -0.475, -0.1417], [-0.8227, -0.475, 0.8083], [-1.3856, -0.8, 0.4833], [-1.3856, -0.8, 0.1833]], b: [[-0.6718, -0.6718, -0.075], [-0.6718, -0.6718, 0.875], [-1.1314, -1.1314, 0.55], [-1.1314, -1.1314, 0.25]], collide: 1}
      - {kind: loft, a: [[-0.6718, -0.6718, -0.075], [-0.6718, -0.6718, 0.875], [-1.1314, -1.1314, 0.55], [-1.1314, -1.1314, 0.25]], b: [[-0.475, -0.8227, -0.0083], [-0.475, -0.8227, 0.9417], [-0.8, -1.3856, 0.6167], [-0.8, -1.3856, 0.3167]], collide: 1}
      - {kind: loft, a: [[-0.475, -0.8227, -0.0083], [-0.475, -0.8227, 0.9417], [-0.8, -1.3856, 0.6167], [-0.8, -1.3856, 0.3167]], b: [[-0.2459, -0.9176, 0.0583], [-0.2459, -0.9176, 1.0083], [-0.4141, -1.5455, 0.6833], [-0.4141, -1.5455, 0.3833]], collide: 1}
      - {kind: loft, a: [[-0.2459, -0.9176, 0.0583], [-0.2459, -0.9176, 1.0083], [-0.4141, -1.5455, 0.6833], [-0.4141, -1.5455, 0.3833]], b: [[-0.0, -0.95, 0.125], [-0.0, -0.95, 1.075], [-0.0, -1.6, 0.75], [-0.0, -1.6, 0.45]], collide: 1}
      - {kind: loft, a: [[-0.0, -0.95, 0.125], [-0.0, -0.95, 1.075], [-0.0, -1.6, 0.75], [-0.0, -1.6, 0.45]], b: [[0.2459, -0.9176, 0.1917], [0.2459, -0.9176, 1.1417], [0.4141, -1.5455, 0.8167], [0.4141, -1.5455, 0.5167]], collide: 1}
      - {kind: loft, a: [[0.2459, -0.9176, 0.1917], [0.2459, -0.9176, 1.1417], [0.4141, -1.5455, 0.8167], [0.4141, -1.5455, 0.5167]], b: [[0.475, -0.8227, 0.2583], [0.475, -0.8227, 1.2083], [0.8, -1.3856, 0.8833], [0.8, -1.3856, 0.5833]], collide: 1}
      - {kind: loft, a: [[0.475, -0.8227, 0.2583], [0.475, -0.8227, 1.2083], [0.8, -1.3856, 0.8833], [0.8, -1.3856, 0.5833]], b: [[0.6718, -0.6718, 0.325], [0.6718, -0.6718, 1.275], [1.1314, -1.1314, 0.95], [1.1314, -1.1314, 0.65]], collide: 1}
      - {kind: loft, a: [[0.6718, -0.6718, 0.325], [0.6718, -0.6718, 1.275], [1.1314, -1.1314, 0.95], [1.1314, -1.1314, 0.65]], b: [[0.8227, -0.475, 0.3917], [0.8227, -0.475, 1.3417], [1.3856, -0.8, 1.0167], [1.3856, -0.8, 0.7167]], collide: 1}
      - {kind: loft, a: [[0.8227, -0.475, 0.3917], [0.8227, -0.475, 1.3417], [1.3856, -0.8, 1.0167], [1.3856, -0.8, 0.7167]], b: [[0.9176, -0.2459, 0.4583], [0.9176, -0.2459, 1.4083], [1.5455, -0.4141, 1.0833], [1.5455, -0.4141, 0.7833]], collide: 1}
      - {kind: loft, a: [[0.9176, -0.2459, 0.4583], [0.9176, -0.2459, 1.4083], [1.5455, -0.4141, 1.0833], [1.5455, -0.4141, 0.7833]], b: [[0.95, -0.0, 0.525], [0.95, -0.0, 1.475], [1.6, -0.0, 1.15], [1.6, -0.0, 0.85]], collide: 1}
      - {kind: loft, a: [[0.95, -0.0, 0.525], [0.95, -0.0, 1.475], [1.6, -0.0, 1.15], [1.6, -0.0, 0.85]], b: [[0.9176, 0.2459, 0.5917], [0.9176, 0.2459, 1.5417], [1.5455, 0.4141, 1.2167], [1.5455, 0.4141, 0.9167]], collide: 1}
      - {kind: loft, a: [[0.9176, 0.2459, 0.5917], [0.9176, 0.2459, 1.5417], [1.5455, 0.4141, 1.2167], [1.5455, 0.4141, 0.9167]], b: [[0.8227, 0.475, 0.6583], [0.8227, 0.475, 1.6083], [1.3856, 0.8, 1.2833], [1.3856, 0.8, 0.9833]], collide: 1}
      - {kind: loft, a: [[0.8227, 0.475, 0.6583], [0.8227, 0.475, 1.6083], [1.3856, 0.8, 1.2833], [1.3856, 0.8, 0.9833]], b: [[0.6718, 0.6718, 0.725], [0.6718, 0.6718, 1.675], [1.1314, 1.1314, 1.35], [1.1314, 1.1314, 1.05]], collide: 1}
      - {kind: loft, a: [[0.6718, 0.6718, 0.725], [0.6718, 0.6718, 1.675], [1.1314, 1.1314, 1.35], [1.1314, 1.1314, 1.05]], b: [[0.475, 0.8227, 0.7917], [0.475, 0.8227, 1.7417], [0.8, 1.3856, 1.4167], [0.8, 1.3856, 1.1167]], collide: 1}
      - {kind: loft, a: [[0.475, 0.8227, 0.7917], [0.475, 0.8227, 1.7417], [0.8, 1.3856, 1.4167], [0.8, 1.3856, 1.1167]], b: [[0.2459, 0.9176, 0.8583], [0.2459, 0.9176, 1.8083], [0.4141, 1.5455, 1.4833], [0.4141, 1.5455, 1.1833]], collide: 1}
      - {kind: loft, a: [[0.2459, 0.9176, 0.8583], [0.2459, 0.9176, 1.8083], [0.4141, 1.5455, 1.4833], [0.4141, 1.5455, 1.1833]], b: [[0.0, 0.95, 0.925], [0.0, 0.95, 1.875], [0.0, 1.6, 1.55], [0.0, 1.6, 1.25]], collide: 1}
      - {kind: loft, a: [[0.0, 0.95, 0.925], [0.0, 0.95, 1.875], [0.0, 1.6, 1.55], [0.0, 1.6, 1.25]], b: [[-0.2459, 0.9176, 0.9917], [-0.2459, 0.9176, 1.9417], [-0.4141, 1.5455, 1.6167], [-0.4141, 1.5455, 1.3167]], collide: 1}
      - {kind: loft, a: [[-0.2459, 0.9176, 0.9917], [-0.2459, 0.9176, 1.9417], [-0.4141, 1.5455, 1.6167], [-0.4141, 1.5455, 1.3167]], b: [[-0.475, 0.8227, 1.0583], [-0.475, 0.8227, 2.0083], [-0.8, 1.3856, 1.6833], [-0.8, 1.3856, 1.3833]], collide: 1}
      - {kind: loft, a: [[-0.475, 0.8227, 1.0583], [-0.475, 0.8227, 2.0083], [-0.8, 1.3856, 1.6833], [-0.8, 1.3856, 1.3833]], b: [[-0.6718, 0.6718, 1.125], [-0.6718, 0.6718, 2.075], [-1.1314, 1.1314, 1.75], [-1.1314, 1.1314, 1.45]], collide: 1}
      - {kind: loft, a: [[-0.6718, 0.6718, 1.125], [-0.6718, 0.6718, 2.075], [-1.1314, 1.1314, 1.75], [-1.1314, 1.1314, 1.45]], b: [[-0.8227, 0.475, 1.1917], [-0.8227, 0.475, 2.1417], [-1.3856, 0.8, 1.8167], [-1.3856, 0.8, 1.5167]], collide: 1}
      - {kind: loft, a: [[-0.8227, 0.475, 1.1917], [-0.8227, 0.475, 2.1417], [-1.3856, 0.8, 1.8167], [-1.3856, 0.8, 1.5167]], b: [[-0.9176, 0.2459, 1.2583], [-0.9176, 0.2459, 2.2083], [-1.5455, 0.4141, 1.8833], [-1.5455, 0.4141, 1.5833]], collide: 1}
      - {kind: loft, a: [[-0.9176, 0.2459, 1.2583], [-0.9176, 0.2459, 2.2083], [-1.5455, 0.4141, 1.8833], [-1.5455, 0.4141, 1.5833]], b: [[-0.95, 0.0, 1.325], [-0.95, 0.0, 2.275], [-1.6, 0.0, 1.95], [-1.6, 0.0, 1.65]], collide: 1}
  - id: roller_l
    shape: part
    pos: [-19.8, 0, 0.9686]
    mount: bar
    density: 7800
    friction: 0.1
    color: "#9a948a"
    pieces:
      - {kind: disc, center: [-19.8, 0.9686], radius: 0.6, y: [-1.0, 1.0], collide: 2}   # the small roller
      - {kind: disc, center: [-19.8, 0.9686], radius: 0.15, y: [-1.6, -1.0], color: "#5c5244"}   # its pin
  - id: roller_r
    shape: part
    pos: [19.8, 0, 0.9686]
    mount: bar
    density: 7800
    friction: 0.1
    color: "#9a948a"
    pieces:
      - {kind: disc, center: [19.8, 0.9686], radius: 0.6, y: [-1.0, 1.0], collide: 2}   # the small roller
      - {kind: disc, center: [19.8, 0.9686], radius: 0.15, y: [-1.6, -1.0], color: "#5c5244"}   # its pin
joints:
  - {id: j_s, type: hinge, body: screw, axis: [0, 0, 1], damping: 0.002}   # the screw, turned by its thumb-piece: the one driven joint
  - {id: j_z, type: slide, body: screw_c, axis: [0, 0, 1], range: [-1, 4], damping: 0.05}   # the screw rising in its nut
  - {id: j_ax, type: slide, body: car_x, axis: [1, 0, 0], damping: 0.02}   # the arch is free on the bar: across
  - {id: j_az, type: slide, body: car_z, axis: [0, 0, 1], damping: 0.02}   # up
  - {id: j_am, type: hinge, body: arch7, axis: [0, -1, 0], damping: 0.002}   # and turning
  - {id: j_h6, type: hinge, body: arch6, axis: [0, -1, 0], stiffness: 27.8485, springref: 0, damping: 0.557}   # the bar's spring at 18.38 cm from its end
  - {id: j_h5, type: hinge, body: arch5, axis: [0, -1, 0], stiffness: 23.5542, springref: 0, damping: 0.4711}   # the bar's spring at 15.5458 cm from its end
  - {id: j_h4, type: hinge, body: arch4, axis: [0, -1, 0], stiffness: 19.2862, springref: 0, damping: 0.3857}   # the bar's spring at 12.7289 cm from its end
  - {id: j_h3, type: hinge, body: arch3, axis: [0, -1, 0], stiffness: 15.0617, springref: 0, damping: 0.3012}   # the bar's spring at 9.9407 cm from its end
  - {id: j_h2, type: hinge, body: arch2, axis: [0, -1, 0], stiffness: 10.898, springref: 0, damping: 0.218}   # the bar's spring at 7.1927 cm from its end
  - {id: j_h1, type: hinge, body: arch1, axis: [0, -1, 0], stiffness: 6.8121, springref: 0, damping: 0.1362}   # the bar's spring at 4.496 cm from its end
  - {id: j_h0, type: hinge, body: arch0, axis: [0, -1, 0], stiffness: 2.8204, springref: 0, damping: 0.0564}   # the bar's spring at 1.8615 cm from its end
  - {id: j_h8, type: hinge, body: arch8, axis: [0, -1, 0], stiffness: 27.8485, springref: 0, damping: 0.557}   # the bar's spring at 18.38 cm from its end
  - {id: j_h9, type: hinge, body: arch9, axis: [0, -1, 0], stiffness: 23.5542, springref: 0, damping: 0.4711}   # the bar's spring at 15.5458 cm from its end
  - {id: j_h10, type: hinge, body: arch10, axis: [0, -1, 0], stiffness: 19.2862, springref: 0, damping: 0.3857}   # the bar's spring at 12.7289 cm from its end
  - {id: j_h11, type: hinge, body: arch11, axis: [0, -1, 0], stiffness: 15.0617, springref: 0, damping: 0.3012}   # the bar's spring at 9.9407 cm from its end
  - {id: j_h12, type: hinge, body: arch12, axis: [0, -1, 0], stiffness: 10.898, springref: 0, damping: 0.218}   # the bar's spring at 7.1927 cm from its end
  - {id: j_h13, type: hinge, body: arch13, axis: [0, -1, 0], stiffness: 6.8121, springref: 0, damping: 0.1362}   # the bar's spring at 4.496 cm from its end
  - {id: j_h14, type: hinge, body: arch14, axis: [0, -1, 0], stiffness: 2.8204, springref: 0, damping: 0.0564}   # the bar's spring at 1.8615 cm from its end
  - {id: j_l, type: hinge, body: roller_l, axis: [0, -1, 0], damping: 0.0005}   # the small roller turning on its pin
  - {id: j_r, type: hinge, body: roller_r, axis: [0, -1, 0], damping: 0.0005}   # the small roller turning on its pin
driver: {joint: j_s, kind: velocity, rpm: 9, kv: 0.3, max_torque: 5}
checks:
  - {type: follow, out: j_z, in: j_s, expect: 0.002546, tol: 0.0002, min_r2: 0.99, settle_s: 0.5, window_s: 10}   # the screw rises its pitch (1.6 cm) a turn in its nut
  - {type: follow, out: j_az, in: j_s, expect: 0.002546, tol: 0.0003, min_r2: 0.99, settle_s: 0.5, window_s: 10}   # and carries the arch's middle up with it
  - {type: follow, out: j_h0, in: j_h6, expect: 1.0, tol: 0.15, min_r2: 0.98, settle_s: 0.5, window_s: 10}   # the bar bends alike at its end and near its middle: a true arc
  - {type: follow, out: j_h3, in: j_h6, expect: 1.0, tol: 0.1, min_r2: 0.99, settle_s: 0.5, window_s: 10}   # and between
  - {type: follow, out: j_h14, in: j_h0, expect: -1.0, tol: 0.05, min_r2: 0.99, settle_s: 0.5, window_s: 10}   # the two halves alike
  - {type: penetration, max: 0.002, settle_s: 0.5}
camera: {target: [0, 0, -2], position: [0, -75, -2], fov: 34}
display:
  output: j_az
  labels: {j_s: "Screw (driver)", j_z: "Screw rising", j_az: "Arch's middle", j_h0: "Arch at its end", j_h6: "Arch near its middle"}
