{
  "width": 128,
  "height": 128,
  "command": {
    "vert": [
      "precision highp float;",
      "#pragma lines: attribute vec2 xy",
      "#pragma lines: position = getPosition(xy)",
      "#pragma lines: width = getWidth()",
      "float getWidth() { return 20.0; }",
      "vec4 getPosition(vec2 xy) { return vec4(xy, 0, 1); }"
    ],
    "frag": [
      "precision lowp float;",
      "void main () {",
      "  gl_FragColor = vec4(0,0,0,0.2);",
      "}"
    ],
    "blend": {
      "enable": true,
      "func": {
        "srcRGB": "src alpha",
        "srcAlpha": 1,
        "dstRGB": "one minus src alpha",
        "dstAlpha": 1
      }
    },
    "depth": {
      "enable": false
    }
  },
  "vertexAttributes": {
    "xy": [
      [0, 0],
      [0.8, 0],
      [0,0],
      [0,-0.8],
      [0,0],
      [-0.8,0],
      [0,0],
      [0,0.8],
      [0,0],
      [0.6, 0.6],
      [0, 0],
      [-0.6, 0.6],
      [0, 0],
      [-0.6, -0.6],
      [0, 0],
      [0.6, -0.6],
      [0,0],
      [-0.1, 0.1]
    ]
  },
  "endpointAttributes": {
    "xy": [
      [
        [0, 0],
        [0.8, 0],
        [0,0]
      ], [
        [-0.1, 0.1],
        [0,0],
        [0.6, -0.6]
      ]
    ]
  },
  "data": {
    "join": "round",
    "cap": "round",
    "capResolution": 4,
    "joinResolution": 4
  }
}
