# No. 281 (Brown 1868): "The revolution of the disk causes the lever at the right to vibrate by the pin moving in the groove in the face of the disk."
#
# Model (cm, gravity on): the disk (9.6 cm, the one driven joint, 20 turns a minute) has an endless groove in its face (1.02 cm wide, walls of real contact).
# A lever hung from a fulcrum above at the right carries a pin (1 cm) 9.5 cm down it, in the groove. The groove is the pin's path in the disk's own frame
# for the lever angle phi = 0.25 (sin t + 0.35 sin 2t)/1.175, so the lever swings 0.25 rad either way once a turn, quicker one way than the other, and the groove
# holds the pin both ways with no spring. Generator: opencode-runs/batch12/gen281.py.
number: 281
slug: face-groove-lever
name: A disk whose face-groove vibrates a lever
brown: "The revolution of the disk causes the lever at the right to vibrate by the pin moving in the groove in the face of the disk."
units: cm
sim:
  timestep: 0.0005
  integrator: implicitfast
  iterations: 50
  solver: PGS
  duration_s: 10
  floor: false
bodies:
  - id: disk
    shape: part
    pos: [0, 0, 0]
    mass: 1.5
    friction: 0.05
    color: "#d9cfb6"
    pieces:
      - {kind: rod, from: [0, 0.8, 0], to: [0, 3.0, 0], radius: 0.8, color: "#8f8a80"}   # the shaft
      - {kind: disc, center: [0, 0], radius: 9.6, y: [0.4, 0.9]}   # the disk, the groove cut in its face
      - {kind: disc, center: [0, 0], radius: 0.9, y: [-0.4, 0.4], color: "#8f8a80"}   # the boss
      - {kind: poly, points: [[5.4007, 0.8155], [5.1675, 1.0932], [5.5403, 1.4265], [5.7935, 1.1249]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.1675, 1.0932], [4.9221, 1.3515], [5.274, 1.7067], [5.5403, 1.4265]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.9221, 1.3515], [4.6669, 1.5899], [4.9974, 1.9651], [5.274, 1.7067]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.6669, 1.5899], [4.4041, 1.8085], [4.7129, 2.2018], [4.9974, 1.9651]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.4041, 1.8085], [4.1362, 2.0072], [4.4231, 2.4167], [4.7129, 2.2018]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.1362, 2.0072], [3.8655, 2.1864], [4.1304, 2.6104], [4.4231, 2.4167]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.8655, 2.1864], [3.5941, 2.3465], [3.8372, 2.7834], [4.1304, 2.6104]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.5941, 2.3465], [3.324, 2.4883], [3.5457, 2.9365], [3.8372, 2.7834]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.324, 2.4883], [3.0572, 2.6126], [3.258, 3.0706], [3.5457, 2.9365]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.0572, 2.6126], [2.7956, 2.7205], [2.9761, 3.1868], [3.258, 3.0706]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.7956, 2.7205], [2.5406, 2.8132], [2.7018, 3.2865], [2.9761, 3.1868]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.5406, 2.8132], [2.2938, 2.892], [2.4368, 3.3711], [2.7018, 3.2865]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.2938, 2.892], [2.0565, 2.9584], [2.1827, 3.4422], [2.4368, 3.3711]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.0565, 2.9584], [1.8296, 3.0138], [1.9407, 3.5013], [2.1827, 3.4422]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.8296, 3.0138], [1.614, 3.0598], [1.7121, 3.5501], [1.9407, 3.5013]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.614, 3.0598], [1.4104, 3.0982], [1.4976, 3.5905], [1.7121, 3.5501]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.4104, 3.0982], [1.219, 3.1304], [1.298, 3.6241], [1.4976, 3.5905]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.219, 3.1304], [1.04, 3.158], [1.1137, 3.6525], [1.298, 3.6241]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.04, 3.158], [0.8731, 3.1824], [0.9446, 3.6772], [1.1137, 3.6525]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.8731, 3.1824], [0.7177, 3.2049], [0.7902, 3.6996], [0.9446, 3.6772]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.7177, 3.2049], [0.5729, 3.2266], [0.6494, 3.7207], [0.7902, 3.6996]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.5729, 3.2266], [0.4372, 3.2485], [0.5204, 3.7415], [0.6494, 3.7207]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.4372, 3.2485], [0.3087, 3.2713], [0.4005, 3.7628], [0.5204, 3.7415]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.3087, 3.2713], [0.1851, 3.2956], [0.2866, 3.7852], [0.4005, 3.7628]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.1851, 3.2956], [0.0639, 3.322], [0.1748, 3.8095], [0.2866, 3.7852]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.0639, 3.322], [-0.0577, 3.3508], [0.0614, 3.8364], [0.1748, 3.8095]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.0577, 3.3508], [-0.182, 3.3821], [-0.0572, 3.8663], [0.0614, 3.8364]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.182, 3.3821], [-0.3113, 3.4158], [-0.1841, 3.8994], [-0.0572, 3.8663]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.3113, 3.4158], [-0.4473, 3.4515], [-0.3214, 3.9354], [-0.1841, 3.8994]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.4473, 3.4515], [-0.5914, 3.4883], [-0.4709, 3.9735], [-0.3214, 3.9354]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.5914, 3.4883], [-0.7447, 3.5248], [-0.6336, 4.0123], [-0.4709, 3.9735]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.7447, 3.5248], [-0.9078, 3.5598], [-0.8099, 4.0501], [-0.6336, 4.0123]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.9078, 3.5598], [-1.0808, 3.5913], [-0.9999, 4.0847], [-0.8099, 4.0501]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.0808, 3.5913], [-1.2639, 3.6176], [-1.2033, 4.1139], [-0.9999, 4.0847]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.2639, 3.6176], [-1.4567, 3.6366], [-1.4193, 4.1352], [-1.2033, 4.1139]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.4567, 3.6366], [-1.6586, 3.6465], [-1.6472, 4.1464], [-1.4193, 4.1352]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.6586, 3.6465], [-1.8688, 3.6455], [-1.8854, 4.1452], [-1.6472, 4.1464]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.8688, 3.6455], [-2.0861, 3.6317], [-2.1327, 4.1295], [-1.8854, 4.1452]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.0861, 3.6317], [-2.3092, 3.6037], [-2.3871, 4.0976], [-2.1327, 4.1295]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.3092, 3.6037], [-2.5366, 3.5602], [-2.6467, 4.0479], [-2.3871, 4.0976]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.5366, 3.5602], [-2.7665, 3.5001], [-2.9094, 3.9792], [-2.6467, 4.0479]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.7665, 3.5001], [-2.9972, 3.4225], [-3.173, 3.8906], [-2.9094, 3.9792]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.9972, 3.4225], [-3.2268, 3.3269], [-3.4351, 3.7814], [-3.173, 3.8906]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.2268, 3.3269], [-3.4534, 3.213], [-3.6936, 3.6515], [-3.4351, 3.7814]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.4534, 3.213], [-3.675, 3.081], [-3.9462, 3.5011], [-3.6936, 3.6515]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.675, 3.081], [-3.8899, 2.931], [-4.1907, 3.3304], [-3.9462, 3.5011]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.8899, 2.931], [-4.0962, 2.7636], [-4.425, 3.1403], [-4.1907, 3.3304]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.0962, 2.7636], [-4.2924, 2.5795], [-4.6473, 2.9317], [-4.425, 3.1403]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.2924, 2.5795], [-4.477, 2.3798], [-4.856, 2.7059], [-4.6473, 2.9317]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.477, 2.3798], [-4.6486, 2.1654], [-5.0496, 2.4641], [-4.856, 2.7059]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.6486, 2.1654], [-4.8063, 1.9377], [-5.2269, 2.208], [-5.0496, 2.4641]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.8063, 1.9377], [-4.949, 1.698], [-5.387, 1.9391], [-5.2269, 2.208]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.949, 1.698], [-5.076, 1.4477], [-5.5291, 1.6592], [-5.387, 1.9391]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.076, 1.4477], [-5.187, 1.1881], [-5.6529, 1.3698], [-5.5291, 1.6592]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.187, 1.1881], [-5.2816, 0.9207], [-5.758, 1.0726], [-5.6529, 1.3698]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.2816, 0.9207], [-5.3597, 0.6468], [-5.8445, 0.7692], [-5.758, 1.0726]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.3597, 0.6468], [-5.4214, 0.3678], [-5.9126, 0.4611], [-5.8445, 0.7692]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.4214, 0.3678], [-5.4667, 0.0847], [-5.9625, 0.1497], [-5.9126, 0.4611]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.4667, 0.0847], [-5.4961, -0.2012], [-5.9947, -0.1639], [-5.9625, 0.1497]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.4961, -0.2012], [-5.5099, -0.4891], [-6.0098, -0.4785], [-5.9947, -0.1639]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.5099, -0.4891], [-5.5085, -0.7781], [-6.0083, -0.7932], [-6.0098, -0.4785]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.5085, -0.7781], [-5.4926, -1.0675], [-5.991, -1.1074], [-6.0083, -0.7932]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.4926, -1.0675], [-5.4624, -1.3567], [-5.9583, -1.4203], [-5.991, -1.1074]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.4624, -1.3567], [-5.4186, -1.6452], [-5.911, -1.7317], [-5.9583, -1.4203]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.4186, -1.6452], [-5.3614, -1.9328], [-5.8496, -2.0411], [-5.911, -1.7317]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.3614, -1.9328], [-5.2913, -2.2192], [-5.7743, -2.3484], [-5.8496, -2.0411]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.2913, -2.2192], [-5.2086, -2.5042], [-5.6857, -2.6536], [-5.7743, -2.3484]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.2086, -2.5042], [-5.1133, -2.7877], [-5.5838, -2.9567], [-5.6857, -2.6536]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.1133, -2.7877], [-5.0055, -3.0696], [-5.4688, -3.2576], [-5.5838, -2.9567]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-5.0055, -3.0696], [-4.8851, -3.3499], [-5.3405, -3.5564], [-5.4688, -3.2576]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.8851, -3.3499], [-4.7519, -3.6284], [-5.1986, -3.8531], [-5.3405, -3.5564]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.7519, -3.6284], [-4.6057, -3.905], [-5.0429, -4.1476], [-5.1986, -3.8531]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.6057, -3.905], [-4.446, -4.1794], [-4.8728, -4.4398], [-5.0429, -4.1476]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.446, -4.1794], [-4.2723, -4.4513], [-4.6878, -4.7293], [-4.8728, -4.4398]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.2723, -4.4513], [-4.084, -4.7201], [-4.4873, -5.0157], [-4.6878, -4.7293]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.084, -4.7201], [-3.8806, -4.9851], [-4.2704, -5.2982], [-4.4873, -5.0157]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.8806, -4.9851], [-3.6615, -5.2454], [-4.0366, -5.576], [-4.2704, -5.2982]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.6615, -5.2454], [-3.4261, -5.5001], [-3.7852, -5.8481], [-4.0366, -5.576]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.4261, -5.5001], [-3.174, -5.7478], [-3.5156, -6.113], [-3.7852, -5.8481]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.174, -5.7478], [-2.9048, -5.9872], [-3.2273, -6.3692], [-3.5156, -6.113]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.9048, -5.9872], [-2.6182, -6.2166], [-2.9202, -6.615], [-3.2273, -6.3692]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.6182, -6.2166], [-2.3142, -6.4342], [-2.594, -6.8486], [-2.9202, -6.615]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.3142, -6.4342], [-1.993, -6.6382], [-2.2489, -7.0677], [-2.594, -6.8486]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.993, -6.6382], [-1.6549, -6.8265], [-1.8854, -7.2702], [-2.2489, -7.0677]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.6549, -6.8265], [-1.3008, -6.9971], [-1.5041, -7.4539], [-1.8854, -7.2702]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.3008, -6.9971], [-0.9315, -7.148], [-1.1061, -7.6166], [-1.5041, -7.4539]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.9315, -7.148], [-0.5482, -7.2771], [-0.6926, -7.7558], [-1.1061, -7.6166]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.5482, -7.2771], [-0.1527, -7.3825], [-0.2654, -7.8696], [-0.6926, -7.7558]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.1527, -7.3825], [0.2534, -7.4622], [0.1737, -7.9558], [-0.2654, -7.8696]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.2534, -7.4622], [0.6678, -7.5146], [0.6222, -8.0125], [0.1737, -7.9558]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.6678, -7.5146], [1.0883, -7.5383], [1.0778, -8.0381], [0.6222, -8.0125]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.0883, -7.5383], [1.5122, -7.5319], [1.5376, -8.0313], [1.0778, -8.0381]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.5122, -7.5319], [1.9367, -7.4947], [1.9987, -7.9909], [1.5376, -8.0313]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.9367, -7.4947], [2.359, -7.426], [2.4577, -7.9161], [1.9987, -7.9909]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.359, -7.426], [2.7759, -7.3254], [2.9116, -7.8066], [2.4577, -7.9161]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.7759, -7.3254], [3.1844, -7.193], [3.3568, -7.6624], [2.9116, -7.8066]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.1844, -7.193], [3.5815, -7.0293], [3.7901, -7.4837], [3.3568, -7.6624]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.5815, -7.0293], [3.964, -6.835], [4.208, -7.2713], [3.7901, -7.4837]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.964, -6.835], [4.329, -6.6111], [4.6074, -7.0264], [4.208, -7.2713]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.329, -6.6111], [4.6737, -6.3591], [4.985, -6.7504], [4.6074, -7.0264]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.6737, -6.3591], [4.9955, -6.0807], [5.338, -6.4451], [4.985, -6.7504]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.9955, -6.0807], [5.292, -5.778], [5.6635, -6.1127], [5.338, -6.4451]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.292, -5.778], [5.5609, -5.4532], [5.9591, -5.7557], [5.6635, -6.1127]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.5609, -5.4532], [5.8005, -5.1088], [6.2226, -5.3768], [5.9591, -5.7557]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.8005, -5.1088], [6.0091, -4.7475], [6.4522, -4.979], [6.2226, -5.3768]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.0091, -4.7475], [6.1855, -4.3721], [6.6466, -4.5655], [6.4522, -4.979]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.1855, -4.3721], [6.3289, -3.9855], [6.8046, -4.1395], [6.6466, -4.5655]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.3289, -3.9855], [6.4388, -3.5906], [6.9257, -3.7044], [6.8046, -4.1395]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.4388, -3.5906], [6.515, -3.1905], [7.0096, -3.2636], [6.9257, -3.7044]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.515, -3.1905], [6.5577, -2.7881], [7.0567, -2.8205], [7.0096, -3.2636]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.5577, -2.7881], [6.5675, -2.3862], [7.0674, -2.3782], [7.0567, -2.8205]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.5675, -2.3862], [6.5452, -1.9876], [7.043, -1.9399], [7.0674, -2.3782]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.5452, -1.9876], [6.4921, -1.5948], [6.9846, -1.5085], [7.043, -1.9399]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.4921, -1.5948], [6.4094, -1.2103], [6.8939, -1.0868], [6.9846, -1.5085]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.4094, -1.2103], [6.299, -0.8363], [6.773, -0.677], [6.8939, -1.0868]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.299, -0.8363], [6.1627, -0.4747], [6.6238, -0.2815], [6.773, -0.677]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.1627, -0.4747], [6.0024, -0.1273], [6.4488, 0.0979], [6.6238, -0.2815]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[6.0024, -0.1273], [5.8205, 0.2043], [6.2504, 0.4596], [6.4488, 0.0979]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.8205, 0.2043], [5.6191, 0.5189], [6.0311, 0.8023], [6.2504, 0.4596]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.6191, 0.5189], [5.4007, 0.8155], [5.7935, 1.1249], [6.0311, 0.8023]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.5993, 0.1845], [4.4072, 0.4133], [4.0344, 0.0801], [4.2065, -0.1249]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.4072, 0.4133], [4.2043, 0.6269], [3.8524, 0.2716], [4.0344, 0.0801]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.2043, 0.6269], [3.9926, 0.8245], [3.6621, 0.4494], [3.8524, 0.2716]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.9926, 0.8245], [3.7743, 1.0062], [3.4655, 0.6129], [3.6621, 0.4494]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.7743, 1.0062], [3.5511, 1.1717], [3.2643, 0.7622], [3.4655, 0.6129]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.5511, 1.1717], [3.3251, 1.3213], [3.0602, 0.8972], [3.2643, 0.7622]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.3251, 1.3213], [3.0981, 1.4552], [2.855, 1.0183], [3.0602, 0.8972]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.0981, 1.4552], [2.8718, 1.574], [2.6501, 1.1258], [2.855, 1.0183]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.8718, 1.574], [2.6477, 1.6784], [2.447, 1.2205], [2.6501, 1.1258]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.6477, 1.6784], [2.4273, 1.7693], [2.2469, 1.303], [2.447, 1.2205]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.4273, 1.7693], [2.2118, 1.8477], [2.0506, 1.3744], [2.2469, 1.303]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.2118, 1.8477], [2.0021, 1.9146], [1.8591, 1.4355], [2.0506, 1.3744]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.0021, 1.9146], [1.7989, 1.9714], [1.6727, 1.4876], [1.8591, 1.4355]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.7989, 1.9714], [1.6028, 2.0193], [1.4917, 1.5318], [1.6727, 1.4876]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.6028, 2.0193], [1.414, 2.0596], [1.316, 1.5693], [1.4917, 1.5318]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.414, 2.0596], [1.2324, 2.0938], [1.1452, 1.6015], [1.316, 1.5693]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.2324, 2.0938], [1.0578, 2.1232], [0.9787, 1.6295], [1.1452, 1.6015]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.0578, 2.1232], [0.8896, 2.1491], [0.8159, 1.6546], [0.9787, 1.6295]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.8896, 2.1491], [0.7272, 2.1728], [0.6557, 1.678], [0.8159, 1.6546]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.7272, 2.1728], [0.5699, 2.1957], [0.4974, 1.7009], [0.6557, 1.678]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.5699, 2.1957], [0.4169, 2.2186], [0.3404, 1.7245], [0.4974, 1.7009]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.4169, 2.2186], [0.2675, 2.2427], [0.1843, 1.7497], [0.3404, 1.7245]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.2675, 2.2427], [0.1214, 2.2687], [0.0295, 1.7772], [0.1843, 1.7497]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.1214, 2.2687], [-0.0219, 2.2969], [-0.1234, 1.8073], [0.0295, 1.7772]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.0219, 2.2969], [-0.1625, 2.3274], [-0.2734, 1.8399], [-0.1234, 1.8073]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.1625, 2.3274], [-0.3005, 2.3601], [-0.4196, 1.8745], [-0.2734, 1.8399]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.3005, 2.3601], [-0.4364, 2.3944], [-0.5612, 1.9102], [-0.4196, 1.8745]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.4364, 2.3944], [-0.5707, 2.4294], [-0.6979, 1.9458], [-0.5612, 1.9102]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.5707, 2.4294], [-0.704, 2.4643], [-0.8298, 1.9804], [-0.6979, 1.9458]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.704, 2.4643], [-0.8373, 2.4983], [-0.9578, 2.0131], [-0.8298, 1.9804]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.8373, 2.4983], [-0.9714, 2.5304], [-1.0826, 2.0429], [-0.9578, 2.0131]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.9714, 2.5304], [-1.1074, 2.5595], [-1.2052, 2.0692], [-1.0826, 2.0429]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.1074, 2.5595], [-1.2459, 2.5848], [-1.3268, 2.0913], [-1.2052, 2.0692]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.2459, 2.5848], [-1.3876, 2.6051], [-1.4483, 2.1088], [-1.3268, 2.0913]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.3876, 2.6051], [-1.5329, 2.6195], [-1.5703, 2.1209], [-1.4483, 2.1088]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.5329, 2.6195], [-1.682, 2.6268], [-1.6935, 2.1269], [-1.5703, 2.1209]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.682, 2.6268], [-1.8348, 2.626], [-1.8182, 2.1263], [-1.6935, 2.1269]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.8348, 2.626], [-1.9911, 2.6162], [-1.9445, 2.1183], [-1.8182, 2.1263]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.9911, 2.6162], [-2.1504, 2.5962], [-2.0725, 2.1023], [-1.9445, 2.1183]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.1504, 2.5962], [-2.312, 2.5653], [-2.2019, 2.0775], [-2.0725, 2.1023]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.312, 2.5653], [-2.4751, 2.5226], [-2.3322, 2.0434], [-2.2019, 2.0775]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.4751, 2.5226], [-2.6387, 2.4675], [-2.4629, 1.9994], [-2.3322, 2.0434]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.6387, 2.4675], [-2.8018, 2.3996], [-2.5935, 1.9451], [-2.4629, 1.9994]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.8018, 2.3996], [-2.9632, 2.3185], [-2.723, 1.88], [-2.5935, 1.9451]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.9632, 2.3185], [-3.1218, 2.224], [-2.8506, 1.804], [-2.723, 1.88]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.1218, 2.224], [-3.2763, 2.1162], [-2.9755, 1.7168], [-2.8506, 1.804]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.2763, 2.1162], [-3.4256, 1.9951], [-3.0968, 1.6184], [-2.9755, 1.7168]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.4256, 1.9951], [-3.5684, 1.8611], [-3.2135, 1.5089], [-3.0968, 1.6184]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.5684, 1.8611], [-3.7038, 1.7145], [-3.3247, 1.3884], [-3.2135, 1.5089]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.7038, 1.7145], [-3.8306, 1.5561], [-3.4297, 1.2574], [-3.3247, 1.3884]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.8306, 1.5561], [-3.9481, 1.3864], [-3.5274, 1.1161], [-3.4297, 1.2574]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.9481, 1.3864], [-4.0554, 1.2062], [-3.6173, 0.9651], [-3.5274, 1.1161]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.0554, 1.2062], [-4.1518, 1.0163], [-3.6987, 0.8048], [-3.6173, 0.9651]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.1518, 1.0163], [-4.2367, 0.8176], [-3.7709, 0.6359], [-3.6987, 0.8048]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.2367, 0.8176], [-4.3098, 0.6109], [-3.8335, 0.459], [-3.7709, 0.6359]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.3098, 0.6109], [-4.3708, 0.3972], [-3.886, 0.2748], [-3.8335, 0.459]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.3708, 0.3972], [-4.4193, 0.1773], [-3.9281, 0.084], [-3.886, 0.2748]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.4193, 0.1773], [-4.4554, -0.0478], [-3.9596, -0.1128], [-3.9281, 0.084]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.4554, -0.0478], [-4.4789, -0.2775], [-3.9803, -0.3148], [-3.9596, -0.1128]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.4789, -0.2775], [-4.4901, -0.5109], [-3.9902, -0.5215], [-3.9803, -0.3148]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.4901, -0.5109], [-4.489, -0.7473], [-3.9892, -0.7322], [-3.9902, -0.5215]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.489, -0.7473], [-4.4758, -0.9862], [-3.9774, -0.9463], [-3.9892, -0.7322]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.4758, -0.9862], [-4.4507, -1.2269], [-3.9548, -1.1632], [-3.9774, -0.9463]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.4507, -1.2269], [-4.4139, -1.4689], [-3.9214, -1.3825], [-3.9548, -1.1632]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.4139, -1.4689], [-4.3656, -1.7119], [-3.8775, -1.6037], [-3.9214, -1.3825]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.3656, -1.7119], [-4.306, -1.9555], [-3.823, -1.8262], [-3.8775, -1.6037]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.306, -1.9555], [-4.2352, -2.1992], [-3.7581, -2.0497], [-3.823, -1.8262]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.2352, -2.1992], [-4.1533, -2.4429], [-3.6827, -2.2738], [-3.7581, -2.0497]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.1533, -2.4429], [-4.0603, -2.6861], [-3.597, -2.4981], [-3.6827, -2.2738]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-4.0603, -2.6861], [-3.9562, -2.9286], [-3.5008, -2.7221], [-3.597, -2.4981]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.9562, -2.9286], [-3.8407, -3.1701], [-3.394, -2.9454], [-3.5008, -2.7221]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.8407, -3.1701], [-3.7138, -3.4101], [-3.2766, -3.1675], [-3.394, -2.9454]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.7138, -3.4101], [-3.5752, -3.6483], [-3.1483, -3.388], [-3.2766, -3.1675]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.5752, -3.6483], [-3.4245, -3.8842], [-3.0089, -3.6062], [-3.1483, -3.388]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.4245, -3.8842], [-3.2613, -4.117], [-2.8581, -3.8215], [-3.0089, -3.6062]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.2613, -4.117], [-3.0854, -4.3463], [-2.6956, -4.0331], [-2.8581, -3.8215]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-3.0854, -4.3463], [-2.8963, -4.571], [-2.5212, -4.2404], [-2.6956, -4.0331]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.8963, -4.571], [-2.6937, -4.7902], [-2.3346, -4.4423], [-2.5212, -4.2404]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.6937, -4.7902], [-2.4772, -5.0029], [-2.1357, -4.6378], [-2.3346, -4.4423]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.4772, -5.0029], [-2.2467, -5.2078], [-1.9241, -4.8258], [-2.1357, -4.6378]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.2467, -5.2078], [-2.0021, -5.4036], [-1.7001, -5.0052], [-1.9241, -4.8258]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-2.0021, -5.4036], [-1.7434, -5.5889], [-1.4636, -5.1745], [-1.7001, -5.0052]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.7434, -5.5889], [-1.4708, -5.762], [-1.2148, -5.3324], [-1.4636, -5.1745]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.4708, -5.762], [-1.1848, -5.9213], [-0.9543, -5.4776], [-1.2148, -5.3324]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-1.1848, -5.9213], [-0.886, -6.0653], [-0.6826, -5.6085], [-0.9543, -5.4776]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.886, -6.0653], [-0.5752, -6.1923], [-0.4006, -5.7237], [-0.6826, -5.6085]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.5752, -6.1923], [-0.2537, -6.3006], [-0.1093, -5.8219], [-0.4006, -5.7237]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[-0.2537, -6.3006], [0.0772, -6.3887], [0.19, -5.9016], [-0.1093, -5.8219]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.0772, -6.3887], [0.416, -6.4552], [0.4958, -5.9616], [0.19, -5.9016]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.416, -6.4552], [0.7609, -6.4988], [0.8065, -6.0009], [0.4958, -5.9616]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[0.7609, -6.4988], [1.1097, -6.5185], [1.1202, -6.0186], [0.8065, -6.0009]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.1097, -6.5185], [1.4603, -6.5133], [1.4349, -6.0139], [1.1202, -6.0186]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.4603, -6.5133], [1.8104, -6.4826], [1.7485, -5.9864], [1.4349, -6.0139]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[1.8104, -6.4826], [2.1575, -6.4261], [2.0587, -5.9359], [1.7485, -5.9864]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.1575, -6.4261], [2.4991, -6.3437], [2.3634, -5.8624], [2.0587, -5.9359]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.4991, -6.3437], [2.8327, -6.2356], [2.6603, -5.7663], [2.3634, -5.8624]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[2.8327, -6.2356], [3.1558, -6.1023], [2.9472, -5.648], [2.6603, -5.7663]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.1558, -6.1023], [3.4661, -5.9447], [3.222, -5.5084], [2.9472, -5.648]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.4661, -5.9447], [3.7611, -5.7638], [3.4827, -5.3485], [3.222, -5.5084]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[3.7611, -5.7638], [4.0387, -5.5609], [3.7274, -5.1696], [3.4827, -5.3485]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.0387, -5.5609], [4.297, -5.3375], [3.9545, -4.9731], [3.7274, -5.1696]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.297, -5.3375], [4.5342, -5.0953], [4.1627, -4.7606], [3.9545, -4.9731]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.5342, -5.0953], [4.7487, -4.8362], [4.3506, -4.5337], [4.1627, -4.7606]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.7487, -4.8362], [4.9394, -4.5621], [4.5172, -4.2941], [4.3506, -4.5337]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.9394, -4.5621], [5.105, -4.2752], [4.6619, -4.0436], [4.5172, -4.2941]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.105, -4.2752], [5.2449, -3.9775], [4.7839, -3.7841], [4.6619, -4.0436]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.2449, -3.9775], [5.3586, -3.6712], [4.8829, -3.5171], [4.7839, -3.7841]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.3586, -3.6712], [5.4456, -3.3584], [4.9587, -3.2446], [4.8829, -3.5171]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.4456, -3.3584], [5.506, -3.0413], [5.0114, -2.9682], [4.9587, -3.2446]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.506, -3.0413], [5.5399, -2.722], [5.0409, -2.6897], [5.0114, -2.9682]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.5399, -2.722], [5.5476, -2.4025], [5.0477, -2.4105], [5.0409, -2.6897]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.5476, -2.4025], [5.5299, -2.0848], [5.0322, -2.1325], [5.0477, -2.4105]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.5299, -2.0848], [5.4874, -1.7709], [4.9949, -1.8572], [5.0322, -2.1325]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.4874, -1.7709], [5.4211, -1.4624], [4.9366, -1.586], [4.9949, -1.8572]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.4211, -1.4624], [5.3321, -1.1612], [4.8582, -1.3205], [4.9366, -1.586]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.3321, -1.1612], [5.2219, -0.8689], [4.7607, -1.0621], [4.8582, -1.3205]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.2219, -0.8689], [5.0918, -0.5869], [4.6454, -0.8121], [4.7607, -1.0621]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[5.0918, -0.5869], [4.9435, -0.3166], [4.5136, -0.5719], [4.6454, -0.8121]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.9435, -0.3166], [4.7787, -0.0591], [4.3668, -0.3425], [4.5136, -0.5719]], y: [-0.4, 0.4], collide: 1}
      - {kind: poly, points: [[4.7787, -0.0591], [4.5993, 0.1845], [4.2065, -0.1249], [4.3668, -0.3425]], y: [-0.4, 0.4], collide: 1}
  - id: lever
    shape: part
    pos: [5.0, 0, 10.0]
    mass: 0.3
    friction: 0.05
    color: "#b8ad97"
    pieces:
      - {kind: rod, from: [5.0, -0.4, 0.5], to: [5.0, 0.3, 0.5], radius: 0.5, collide: 2, capsule: true, color: "#8f8a80"}   # the pin in the groove
      - {kind: poly, points: [[4.4, 10.0], [5.6, 10.0], [5.6, -11.0], [4.4, -11.0]], y: [-1.3, -0.6]}   # the lever, before the disk
      - {kind: rod, from: [5.0, -1.3, 0.5], to: [5.0, -0.4, 0.5], radius: 0.35}   # the pin's stem
      - {kind: disc, center: [5.0, 10.0], radius: 1.0, inner: 0.35, y: [-1.4, -0.5]}   # its eye on the fulcrum
  - id: frame
    shape: part
    pos: [0, 0, 0]
    fixed: true
    color: "#cfc6b4"
    pieces:
      - {kind: poly, points: [[-9, -13], [-6.5, -13], [0.5, 0], [-0.5, 0]], y: [1.8, 2.8]}   # the disk's standards, behind
      - {kind: poly, points: [[6.5, -13], [9, -13], [0.5, 0], [-0.5, 0]], y: [1.8, 2.8]}
      - {kind: poly, points: [[2, -13], [3.4, -13], [5.4, 10.0], [4.4, 10.0]], y: [1.8, 2.8]}   # the fulcrum's post
      - {kind: rod, from: [5.0, -1.6, 10.0], to: [5.0, 2.8, 10.0], radius: 0.3, color: "#8f8a80"}   # the fulcrum
      - {kind: poly, points: [[-12, -14], [14, -14], [14, -13], [-12, -13]], y: [-3, 3], color: "#b9b09c"}
joints:
  - {id: j_c, type: hinge, body: disk, axis: [0, 1, 0], damping: 0.002}   # the one driven joint; + : clockwise
  - {id: j_l, type: hinge, body: lever, axis: [0, 1, 0], range: [-0.6, 0.6], damping: 0.01}   # the lever on its fulcrum, held by the groove; + : its foot to the left
driver: {joint: j_c, kind: velocity, rpm: 20.0, kv: 20.0, max_torque: 20}
checks:
  - {type: follow, out: j_l, in: j_c, expect: 0.35268, tol: 0.01411, min_r2: 0.99, settle_s: 2.875, window_s: 0.25}   # the quick swing
  - {type: follow, out: j_l, in: j_c, expect: -0.15204, tol: 0.00608, min_r2: 0.98, settle_s: 4.6667, window_s: 0.5}   # the swing back
  - {type: position, joint: j_l, min: -0.28, max: 0.28, settle_s: 0.5, window_s: 9}
  - {type: penetration, max: 0.001, settle_s: 0.5}
camera: {target: [1.5, 0, -8.0], position: [1.5, -72.0, 2], fov: 34}
display:
  output: j_l
  labels: {j_c: "Disk (driver)", j_l: "Lever"}
  proof: {label: "A disk with a face-groove", sub: "the pin in the groove vibrates the lever"}

