demo_capture = {
   "demoIndex": 5,
   "demoVersion": "5.c",
   "gravity": true,
   "wallMapData": {
      "wall1": {
         "parsAtBirth": {
            "fence": true,
            "half_width_m": 3,
            "half_height_m": 0.05
         },
         "name": "wall1",
         "position_2d_m": {
            "x": 3,
            "y": 6
         },
         "position_2d_px": {
            "x": 300,
            "y": 0
         },
         "fence": true,
         "velocity_2d_mps": {
            "x": 0,
            "y": 0
         },
         "angle_r": 0,
         "angularSpeed_rps": 0,
         "half_width_m": 3,
         "half_height_m": 0.05,
         "half_width_px": 300,
         "half_height_px": 5,
         "width_scaling": 1,
         "height_scaling": 1,
         "color": "white",
         "deleted": false
      },
      "wall2": {
         "parsAtBirth": {
            "fence": true,
            "half_width_m": 3,
            "half_height_m": 0.05
         },
         "name": "wall2",
         "position_2d_m": {
            "x": 3,
            "y": 0
         },
         "position_2d_px": {
            "x": 300,
            "y": 600
         },
         "fence": true,
         "velocity_2d_mps": {
            "x": 0,
            "y": 0
         },
         "angle_r": 0,
         "angularSpeed_rps": 0,
         "half_width_m": 3,
         "half_height_m": 0.05,
         "half_width_px": 300,
         "half_height_px": 5,
         "width_scaling": 1,
         "height_scaling": 1,
         "color": "white",
         "deleted": false
      },
      "wall3": {
         "parsAtBirth": {
            "fence": true,
            "half_width_m": 0.05,
            "half_height_m": 3
         },
         "name": "wall3",
         "position_2d_m": {
            "x": 0,
            "y": 3
         },
         "position_2d_px": {
            "x": 0,
            "y": 300
         },
         "fence": true,
         "velocity_2d_mps": {
            "x": 0,
            "y": 0
         },
         "angle_r": 0,
         "angularSpeed_rps": 0,
         "half_width_m": 0.05,
         "half_height_m": 3,
         "half_width_px": 5,
         "half_height_px": 300,
         "width_scaling": 1,
         "height_scaling": 1,
         "color": "white",
         "deleted": false
      },
      "wall4": {
         "parsAtBirth": {
            "fence": true,
            "half_width_m": 0.05,
            "half_height_m": 3
         },
         "name": "wall4",
         "position_2d_m": {
            "x": 6,
            "y": 3
         },
         "position_2d_px": {
            "x": 600,
            "y": 300
         },
         "fence": true,
         "velocity_2d_mps": {
            "x": 0,
            "y": 0
         },
         "angle_r": 0,
         "angularSpeed_rps": 0,
         "half_width_m": 0.05,
         "half_height_m": 3,
         "half_width_px": 5,
         "half_height_px": 300,
         "width_scaling": 1,
         "height_scaling": 1,
         "color": "white",
         "deleted": false
      }
   },
   "puckMapData": {
      "puck2": {
         "parsAtBirth": {
            "radius_m": 0.25,
            "name": "puck2"
         },
         "bullet": false,
         "jello": false,
         "clientName": null,
         "name": "puck2",
         "position_2d_m": {
            "x": 3.0177463814558467,
            "y": 2.053860144398522
         },
         "position_2d_px": {
            "x": 302,
            "y": 395
         },
         "velocity_2d_mps": {
            "x": 0.09784568805752082,
            "y": -3.061409530035801
         },
         "color": "DarkSlateGray",
         "shape": "circle",
         "colorSource": false,
         "density": 1.5,
         "linDamp": 0,
         "hitLimit": 10,
         "createdByClient": null,
         "ageLimit_ms": null,
         "createTail": false,
         "tailPars": null,
         "tail": null,
         "groupIndex": 0,
         "categoryBits": 1,
         "maskBits": 65535,
         "angle_r": 0,
         "angularSpeed_rps": 0,
         "borderWidth_px": 3,
         "age_ms": 0,
         "restitution": 1,
         "restitution_fixed": false,
         "friction": 0,
         "friction_fixed": false,
         "radius_m": 0.25,
         "aspectR": 1,
         "half_height_m": null,
         "half_width_m": null,
         "radius_px": 25,
         "width_scaling": 1,
         "height_scaling": 1,
         "radius_scaling": 1,
         "mass_kg": 0.2945243112740431,
         "cursorString_spring_force_2d_N": {
            "x": 0,
            "y": 0
         },
         "cursorString_puckDrag_force_2d_N": {
            "x": 0,
            "y": 0
         },
         "nonCOM_2d_N": [],
         "sprDamp_force_2d_N": {
            "x": 0,
            "y": 0
         },
         "springOnly_force_2d_N": {
            "x": 0.0043895564251941995,
            "y": 4.141255798693019
         },
         "jet_force_2d_N": {
            "x": 0,
            "y": 0
         },
         "impulse_2d_Ns": {
            "x": 0,
            "y": 0
         },
         "hitCount": 0,
         "poorHealthFraction": 0,
         "flash": false,
         "inComing": false,
         "flashCount": 0,
         "springName": null,
         "pinName": null,
         "deleted": false
      }
   },
   "pinMapData": {
      "pin1": {
         "parsAtBirth": {
            "name": "pin1"
         },
         "name": "pin1",
         "position_2d_m": {
            "x": 3.02,
            "y": 4.18
         },
         "position_2d_px": {
            "x": 302,
            "y": 182
         },
         "radius_px": 6,
         "radius_m": 0.08,
         "categoryBits": 0,
         "maskBits": 0,
         "velocity_2d_mps": {
            "x": 0,
            "y": 0
         },
         "deleted": false,
         "NPC": false,
         "nextPinName": null,
         "previousPinName": null,
         "fillColor": "blue",
         "borderColor": "gray"
      }
   },
   "springMapData": {
      "s1": {
         "parsAtBirth": {
            "length_m": 0,
            "strength_Npm": 5,
            "unstretched_width_m": 0.05,
            "color": "yellow",
            "damper_Ns2pm2": 0
         },
         "name": "s1",
         "color": "yellow",
         "length_m": 1.2978894249584958,
         "strength_Npm": 5,
         "unstretched_width_m": 0.05,
         "drag_c": 0,
         "damper_Ns2pm2": 0,
         "dashedLine": true,
         "roundedEnds": true,
         "navigationForNPC": false,
         "p1_name": "pin1",
         "pinned": false,
         "p2_name": "puck2",
         "p1p2_separation_2d_m": {
            "x": 0.0022536185441532908,
            "y": 2.126139855601478
         },
         "p1p2_separation_m": 2.12614104997143,
         "p1p2_normalized_2d": {
            "x": 0.0010599572141197187,
            "y": 0.9999994382451944
         },
         "softContraints": false
      }
   },
   "clients": {
      "local": {
         "color": "red",
         "name": "local",
         "puck": null,
         "isMouseDown": false,
         "button": null,
         "mouseX_px": 639,
         "mouseY_px": 423,
         "mouse_2d_px": {
            "x": 634,
            "y": 419
         },
         "mouse_2d_m": {
            "x": 6.34,
            "y": 1.81
         },
         "selectedBody": null,
         "selectionPoint_l_2d_m": null,
         "selectionPoint_w_2d_m": null,
         "selectionPoint_w_2d_px": null,
         "key_shift": "U",
         "key_ctrl": "U",
         "key_alt": "U",
         "key_space": "U",
         "key_leftArrow": "U",
         "key_upArrow": "U",
         "key_rightArrow": "U",
         "key_downArrow": "U",
         "key_0": "U",
         "key_1": "U",
         "key_2": "U",
         "key_3": "U",
         "key_4": "U",
         "key_5": "U",
         "key_6": "U",
         "key_7": "U",
         "key_8": "U",
         "key_9": "U",
         "key_a": "U",
         "key_b": "U",
         "key_c": "U",
         "key_d": "U",
         "key_e": "U",
         "key_f": "U",
         "key_g": "U",
         "key_i": "U",
         "key_j": "U",
         "key_k": "U",
         "key_l": "U",
         "key_m": "U",
         "key_p": "U",
         "key_q": "U",
         "key_r": "U",
         "key_s": "U",
         "key_t": "U",
         "key_v": "U",
         "key_w": "U",
         "key_x": "U",
         "key_z": "U",
         "key_s_enabled": true,
         "key_k_enabled": true,
         "key_i_enabled": true,
         "triangle_raw_2d_px": [{
               "x": 0,
               "y": 0
            }, {
               "x": 11,
               "y": 12
            }, {
               "x": 3,
               "y": 16
            }
         ],
         "NPC_guncooling_timer_s": 0,
         "NPC_guncooling_timer_limit_s": 2,
         "NPC_shield_timer_s": 0,
         "NPC_shield_timer_limit_s": 0.5,
         "NPC_pin_timer_s": 0,
         "NPC_pin_timer_limit_s": 5,
         "NPC_aimStepCount": 0,
         "NPC_aimStepCount_limit": 20,
         "NPC_skipFrame": false,
         "triangle_2d_px": [{
               "x": 634,
               "y": 420
            }, {
               "x": 645,
               "y": 432
            }, {
               "x": 637,
               "y": 436
            }
         ],
         "mouseX_m": null,
         "mouseY_m": null
      }
   }
}