{
  "version": 1,
  "collectedAt": "2026-09-07T09:06:05.785Z",
  "runtimeFingerprint": {
    "public/sketch/model.js": "4da79e7393b3d9e4451c7909e12bfd52e321c7a116295434113fb8104937bd47",
    "public/sketch/render.js": "f85cde226a4fd3dbf1975c0349c279eb260582a731e285142f4b0b1708092e5e",
    "public/sketch/wet-render.js": "45a5e6896e29fb3e8654ded19bbbec39b66f27fc6ae81253ed0e019518ff9d87",
    "public/sketch/wet-paper.js": "37d7fdd612a7bd1e2c26b36d9670287608d5be33a8f43c4a1f70babc2d132f0a",
    "public/sketch/motion.js": "95de703e0924402bbab5945cef316e4cb95558d48b75eed42b2b13b8b708d345",
    "scripts/build-technique-exercises.mjs": "87ac86924bf12bd64516cbfc0db7dabed66aac26c1f4dcafbb7502e74db59cc2"
  },
  "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/152.0.0.0 Safari/537.36",
  "renderDimensions": [
    480,
    360
  ],
  "measurementLimits": "Image-derived red optical density is a diagnostic, not exact pigment mass or an artistic quality score. centerUnpaintedFraction only interpretable for contact studies; fractionRightOfX056 only for boundary pair. Replay equality checked at declared checkpoints, not every possible FPS.",
  "runs": [
    {
      "id": "edge-dry",
      "scenePath": "public/sketch/knowledge/exercises/edge-dry.json",
      "sceneSha256": "337e2b300135ff650f24d0b30fdecae55b4f7ce9304699f89da168a1e7626270",
      "replayExact": true,
      "material": {
        "time": 19,
        "mass": [
          1762.942842712051,
          1292.4117367370782,
          763.5871250576062
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 2728.0834753941995,
        "varianceX": 5756.51989740401,
        "varianceY": 144.62485039052262,
        "fractionRightOfX056": 0.2652280606183705,
        "centerUnpaintedFraction": 0.02557544757033248
      },
      "frames": [
        {
          "label": "青を置く前",
          "position": 0,
          "material": {
            "time": 0,
            "mass": [
              0,
              0,
              0
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-dry-0.png",
          "sha256": "c7bfb5cfe9793b021bcab693e0e437b427ce3777b7a7164f8961813748214826"
        },
        {
          "label": "一筆の直後",
          "position": 1,
          "material": {
            "time": 1,
            "mass": [
              1762.9428654159879,
              1292.4117329911621,
              763.5871169671374
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-dry-1.png",
          "sha256": "33e837fb60775dd3af677921576cfbebb806d0114ef9b4060a94edbfb57062c6"
        },
        {
          "label": "18秒後",
          "position": 2,
          "material": {
            "time": 19,
            "mass": [
              1762.942842712051,
              1292.4117367370782,
              763.5871250576062
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-dry-2.png",
          "sha256": "018699fe9eaca07ec34dbfb7d44c05f4e504cdabef3c87b0d084368899bc634e"
        }
      ]
    },
    {
      "id": "edge-wet",
      "scenePath": "public/sketch/knowledge/exercises/edge-wet.json",
      "sceneSha256": "9cbc7e80b2de7fd713f52cb424eead7a501443229b2349f4a9f984f9c02bed5a",
      "replayExact": true,
      "material": {
        "time": 20.25,
        "mass": [
          1762.942914314986,
          1292.4117231251737,
          763.5871152029595
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 2722.5543390604435,
        "varianceX": 5761.848028536042,
        "varianceY": 158.47537768277834,
        "fractionRightOfX056": 0.2651942023188392,
        "centerUnpaintedFraction": 0
      },
      "frames": [
        {
          "label": "青を置く前",
          "position": 5,
          "material": {
            "time": 1.25,
            "mass": [
              0,
              0,
              0
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-wet-0.png",
          "sha256": "c7bfb5cfe9793b021bcab693e0e437b427ce3777b7a7164f8961813748214826"
        },
        {
          "label": "一筆の直後",
          "position": 6,
          "material": {
            "time": 2.25,
            "mass": [
              1762.9428984123404,
              1292.411738581521,
              763.5871223509232
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-wet-1.png",
          "sha256": "89a4ac2ec34914b0efa40331948b520f79ee2f61c6a4f0ce61c77c83a21e9762"
        },
        {
          "label": "18秒後",
          "position": 7,
          "material": {
            "time": 20.25,
            "mass": [
              1762.942914314986,
              1292.4117231251737,
              763.5871152029595
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-wet-2.png",
          "sha256": "6d608195e61b587a700539ebcfa59cb6b9aa5d0217fe4f6314a2009a319eb53c"
        }
      ]
    },
    {
      "id": "edge-damp",
      "scenePath": "public/sketch/knowledge/exercises/edge-damp.json",
      "sceneSha256": "2be8f612bad43f5a631bb78bdf5bf43e60b9bc8ffd97a7aacd2c01d22e07b1d6",
      "replayExact": true,
      "material": {
        "time": 55.25,
        "mass": [
          1762.9428736602763,
          1292.4117484148974,
          763.5871226077041
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 2725.392556918438,
        "varianceX": 5757.321922091258,
        "varianceY": 149.81417456580675,
        "fractionRightOfX056": 0.26518470117965914,
        "centerUnpaintedFraction": 0.0010960906101571063
      },
      "frames": [
        {
          "label": "青を置く前",
          "position": 6,
          "material": {
            "time": 36.25,
            "mass": [
              0,
              0,
              0
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-damp-0.png",
          "sha256": "c7bfb5cfe9793b021bcab693e0e437b427ce3777b7a7164f8961813748214826"
        },
        {
          "label": "一筆の直後",
          "position": 7,
          "material": {
            "time": 37.25,
            "mass": [
              1762.942878188526,
              1292.411746508428,
              763.5871240852932
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-damp-1.png",
          "sha256": "f444026abb6726c98d1746583f969ce403f789d684ae0900787485e44f2eb677"
        },
        {
          "label": "18秒後",
          "position": 8,
          "material": {
            "time": 55.25,
            "mass": [
              1762.9428736602763,
              1292.4117484148974,
              763.5871226077041
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-damp-2.png",
          "sha256": "cbcbc8e2f949dd32ae8f38be43c177861d858546bcb39b09221779ce5c823490"
        }
      ]
    },
    {
      "id": "edge-rested",
      "scenePath": "public/sketch/knowledge/exercises/edge-rested.json",
      "sceneSha256": "c917a9b584833e760fd760be2d657050ae5dee891c6c7b37ae6cd9a3fbf064c4",
      "replayExact": true,
      "material": {
        "time": 140.25,
        "mass": [
          1762.9428753334394,
          1292.4117447616754,
          763.5871228463268
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 2727.6815079294674,
        "varianceX": 5755.420863524356,
        "varianceY": 144.97486795705845,
        "fractionRightOfX056": 0.2651416235981319,
        "centerUnpaintedFraction": 0.020460358056265986
      },
      "frames": [
        {
          "label": "青を置く前",
          "position": 6,
          "material": {
            "time": 121.25,
            "mass": [
              0,
              0,
              0
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-rested-0.png",
          "sha256": "c7bfb5cfe9793b021bcab693e0e437b427ce3777b7a7164f8961813748214826"
        },
        {
          "label": "一筆の直後",
          "position": 7,
          "material": {
            "time": 122.25,
            "mass": [
              1762.9428738138226,
              1292.4117432602416,
              763.5871215089572
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-rested-1.png",
          "sha256": "161c6f37dad2447e5eeab1b0c885bede4f62ce4c68c15590dc84c0df27fa27b7"
        },
        {
          "label": "18秒後",
          "position": 8,
          "material": {
            "time": 140.25,
            "mass": [
              1762.9428753334394,
              1292.4117447616754,
              763.5871228463268
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/edge-rested-2.png",
          "sha256": "fc42d6a87dadd23b66b93f2c768a06049624f80d054ff53492eda85f85cc5db8"
        }
      ]
    },
    {
      "id": "layer-immediate",
      "scenePath": "public/sketch/knowledge/exercises/layer-immediate.json",
      "sceneSha256": "be1874e1ab3cba5d64daf31ac4842cd4b68ef49bc3b81e3fd93e7e8e9aa9394b",
      "replayExact": true,
      "material": {
        "time": 20,
        "mass": [
          4498.371638573284,
          3297.7519404530835,
          1948.389090023767
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 6960.606656370288,
        "varianceX": 5148.432666447596,
        "varianceY": 1371.8767178322341,
        "fractionRightOfX056": 0.21351429391222237,
        "centerUnpaintedFraction": 0
      },
      "frames": [
        {
          "label": "下塗り",
          "position": 1,
          "material": {
            "time": 1,
            "mass": [
              3042.9018280729256,
              2230.748484292591,
              1317.9784298750772
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/layer-immediate-0.png",
          "sha256": "2e945582a97f7711848174014304e65bbfe8af11b1f19af930ebe79478db7d8b"
        },
        {
          "label": "上塗り直後",
          "position": 2,
          "material": {
            "time": 2,
            "mass": [
              4498.371500548315,
              3297.751958118561,
              1948.3890607166968
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/layer-immediate-1.png",
          "sha256": "a7760c8e1dc3c6087ba25d6703e1b405c3bcba9244652763dd2b23d5438fe486"
        },
        {
          "label": "18秒後",
          "position": 3,
          "material": {
            "time": 20,
            "mass": [
              4498.371638573284,
              3297.7519404530835,
              1948.389090023767
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/layer-immediate-2.png",
          "sha256": "0790256366da58f254f97fc4824e54c6371d6a7e49e891846754082e2d4da256"
        }
      ]
    },
    {
      "id": "layer-rested",
      "scenePath": "public/sketch/knowledge/exercises/layer-rested.json",
      "sceneSha256": "2322b5d2c5de06e1fac39beb760cd2f9af0d53e54f210c381a2a50f4cd3d59f5",
      "replayExact": true,
      "material": {
        "time": 140,
        "mass": [
          4498.371153738195,
          3297.751546270211,
          1948.388795528433
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 6960.925801582545,
        "varianceX": 5147.799763138959,
        "varianceY": 1374.0196311510845,
        "fractionRightOfX056": 0.21325387011732982,
        "centerUnpaintedFraction": 0
      },
      "frames": [
        {
          "label": "下塗り",
          "position": 1,
          "material": {
            "time": 1,
            "mass": [
              3042.9018280729256,
              2230.748484292591,
              1317.9784298750772
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/layer-rested-0.png",
          "sha256": "2e945582a97f7711848174014304e65bbfe8af11b1f19af930ebe79478db7d8b"
        },
        {
          "label": "上塗り直後",
          "position": 3,
          "material": {
            "time": 122,
            "mass": [
              4498.371622835636,
              3297.751905919423,
              1948.3889868300898
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/layer-rested-1.png",
          "sha256": "118cb321b2f7e534aee6fa5ede5445b385d4e466da479d8e4ff94583f7f3d176"
        },
        {
          "label": "18秒後",
          "position": 4,
          "material": {
            "time": 140,
            "mass": [
              4498.371153738195,
              3297.751546270211,
              1948.388795528433
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/layer-rested-2.png",
          "sha256": "3dd8026a851bc6a8eab49fc10bfa2908c3867c3871cf8fe59f3319535f1d00aa"
        }
      ]
    },
    {
      "id": "pressure-even",
      "scenePath": "public/sketch/knowledge/exercises/pressure-even.json",
      "sceneSha256": "dcea3185e5d790c1d9ac4164660ce1cb0fe9f72feb1792f1925562a764e09ea1",
      "replayExact": true,
      "material": {
        "time": 3,
        "mass": [
          3073.9519744589343,
          2253.511199788569,
          1331.427227434644
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 4756.096531809305,
        "varianceX": 8410.963982330439,
        "varianceY": 150.41410737123078,
        "fractionRightOfX056": 0.28979203908897133,
        "centerUnpaintedFraction": 0
      },
      "frames": [
        {
          "label": "接地",
          "position": 0.25,
          "material": {
            "time": 0.25,
            "mass": [
              1237.347205615486,
              907.0980474335956,
              535.9347949714283
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/pressure-even-0.png",
          "sha256": "9d10e175cc83126a54e8bc04f9bd782c0fd09ef4e33177f386799b39fe0d1a5d"
        },
        {
          "label": "運筆途中",
          "position": 0.75,
          "material": {
            "time": 0.75,
            "mass": [
              2672.244162148272,
              1959.0195761242649,
              1157.4346766149974
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/pressure-even-1.png",
          "sha256": "3c2dc17c949766d223ab221624e12d841195db85054949f0eeb391ae302ecd15"
        },
        {
          "label": "完成",
          "position": 2,
          "material": {
            "time": 3,
            "mass": [
              3073.9519744589343,
              2253.511199788569,
              1331.427227434644
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/pressure-even-2.png",
          "sha256": "7ac2b0050e4aae1ffbe786d9b76ebb9a774d739dddbee77a554d35f92d49414d"
        }
      ]
    },
    {
      "id": "pressure-taper",
      "scenePath": "public/sketch/knowledge/exercises/pressure-taper.json",
      "sceneSha256": "faea288b2e5e6f2dffdd3245da31b28d4c33fbd8d56e4f5d0deb0a0cf7a3cb54",
      "replayExact": true,
      "material": {
        "time": 3,
        "mass": [
          3073.9518912215717,
          2253.5112566782627,
          1331.4272207376198
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 4743.742474469272,
        "varianceX": 6219.640279237021,
        "varianceY": 76.94931203794476,
        "fractionRightOfX056": 0.27979313141862283,
        "centerUnpaintedFraction": 0
      },
      "frames": [
        {
          "label": "接地",
          "position": 0.25,
          "material": {
            "time": 0.25,
            "mass": [
              1237.347194914706,
              907.0980767961591,
              535.934776236536
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/pressure-taper-0.png",
          "sha256": "c0046b4347d561b7f338fbbbc0c385c7406208d308280d6ba3d295f0cae2f2f5"
        },
        {
          "label": "運筆途中",
          "position": 0.75,
          "material": {
            "time": 0.75,
            "mass": [
              2672.244068589178,
              1959.019623728469,
              1157.434677003359
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/pressure-taper-1.png",
          "sha256": "6a22b8bbbb2a4dc88725d9350193d39948585ab60c49b30ae4bfd917ba58d64f"
        },
        {
          "label": "完成",
          "position": 2,
          "material": {
            "time": 3,
            "mass": [
              3073.9518912215717,
              2253.5112566782627,
              1331.4272207376198
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/pressure-taper-2.png",
          "sha256": "977cbb09d2f9715fcccf40b9295f20d99247048cfe7c2449ecc4b77eb6d2c2d1"
        }
      ]
    },
    {
      "id": "contact-even",
      "scenePath": "public/sketch/knowledge/exercises/contact-even.json",
      "sceneSha256": "eb97eeeef04a9b8a7e5ce272c2f4ffeb337e881c9e2f2138398d8abd5ac836b6",
      "replayExact": true,
      "material": {
        "time": 3,
        "mass": [
          4098.602538487525,
          3004.6816263319924,
          1775.236316899187
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 6320.228456507939,
        "varianceX": 8988.941157796165,
        "varianceY": 265.8723927205792,
        "fractionRightOfX056": 0.30460884235298497,
        "centerUnpaintedFraction": 0
      },
      "frames": [
        {
          "label": "接地",
          "position": 0.25,
          "material": {
            "time": 0.25,
            "mass": [
              1649.796270842664,
              1209.464026948437,
              714.5797223426634
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/contact-even-0.png",
          "sha256": "571877e936ccb9c543cd77c9d370c0c38208407a97d72c6b8ad93a285371b18e"
        },
        {
          "label": "運筆途中",
          "position": 0.75,
          "material": {
            "time": 0.75,
            "mass": [
              3562.9921084265225,
              2612.0261421103496,
              1543.2462521602865
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/contact-even-1.png",
          "sha256": "5c05da0a2b62c2703aff3d9bbf1d608c2095fd0bd3cccd52135dff3f9be0dd6f"
        },
        {
          "label": "完成",
          "position": 2,
          "material": {
            "time": 3,
            "mass": [
              4098.602538487525,
              3004.6816263319924,
              1775.236316899187
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/contact-even-2.png",
          "sha256": "5766a09fe6359f11e1db5b449c7eacf3ae64037676d0765c49a708efb6df194e"
        }
      ]
    },
    {
      "id": "contact-dry",
      "scenePath": "public/sketch/knowledge/exercises/contact-dry.json",
      "sceneSha256": "55b28241aea959cdb2116e8b8f07c950f83f970e5b90f0a05ebbec5e222965d7",
      "replayExact": true,
      "material": {
        "time": 3,
        "mass": [
          4098.60256956215,
          3004.681639799557,
          1775.236278458935
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 6332.741783098939,
        "varianceX": 8983.076695954958,
        "varianceY": 265.73905402398304,
        "fractionRightOfX056": 0.3046457508152693,
        "centerUnpaintedFraction": 0
      },
      "frames": [
        {
          "label": "接地",
          "position": 0.25,
          "material": {
            "time": 0.25,
            "mass": [
              1649.796276701847,
              1209.4640787828248,
              714.5797019791207
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/contact-dry-0.png",
          "sha256": "564666e079bb1425589b4d985d33789b2da2e82396cf8d1754aa92e7d523e7bf"
        },
        {
          "label": "運筆途中",
          "position": 0.75,
          "material": {
            "time": 0.75,
            "mass": [
              3562.99214053771,
              2612.0261444799835,
              1543.2462162632146
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/contact-dry-1.png",
          "sha256": "11ad7f7af8c0e9f18bfc06e96efc76b496afb39c0a3f15a5ced5e5fc359dcd08"
        },
        {
          "label": "完成",
          "position": 2,
          "material": {
            "time": 3,
            "mass": [
              4098.60256956215,
              3004.681639799557,
              1775.236278458935
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/contact-dry-2.png",
          "sha256": "dafaef526d5e9569a1f065ff4bc225c64184ed16fb97e57ff4e817f1141c0280"
        }
      ]
    },
    {
      "id": "reflection-groups",
      "scenePath": "public/sketch/knowledge/exercises/reflection-groups.json",
      "sceneSha256": "a611d9c0e962eb55ec7850d83781f1ba4e6733cbfcf013e979645cc2c6e6b2ca",
      "replayExact": true,
      "material": {
        "time": 129,
        "mass": [
          957.6881657005027,
          702.0802662390798,
          414.80546695375347
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 1473.4467788993932,
        "varianceX": 3120.8982436475053,
        "varianceY": 838.2850610899077,
        "fractionRightOfX056": 0.19385054771910082,
        "centerUnpaintedFraction": 0.3942272561198392
      },
      "frames": [
        {
          "label": "色のまとまり",
          "position": 3,
          "material": {
            "time": 3,
            "mass": [
              681.0326469363328,
              499.264389900766,
              294.9770930216865
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/reflection-groups-0.png",
          "sha256": "ff7cd64927a32462f452fb22d4ddd37db25380644b26723d8d28cd86d0392244"
        },
        {
          "label": "乾燥後",
          "position": 4,
          "material": {
            "time": 123,
            "mass": [
              681.0324916032531,
              499.2642550654209,
              294.977017997295
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/reflection-groups-1.png",
          "sha256": "b4cb37116a351f94aac5bb0d65d880f03feb4075f38e1cd519e0af6902470cbe"
        },
        {
          "label": "横の筆跡",
          "position": 10,
          "material": {
            "time": 129,
            "mass": [
              957.6881657005027,
              702.0802662390798,
              414.80546695375347
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/reflection-groups-2.png",
          "sha256": "77fa78842965038f201eb155bdc73919176706cd78c7bb5d3009aa55c30c962f"
        }
      ]
    },
    {
      "id": "boundary-local",
      "scenePath": "public/sketch/knowledge/exercises/boundary-local.json",
      "sceneSha256": "112b2eefd7e3778b317723b2f8c2ee909520d982fcab667fb3d12258aa1b9c8b",
      "replayExact": true,
      "material": {
        "time": 37,
        "mass": [
          158.9372865976061,
          116.51677363463658,
          68.84083938391258
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 242.32273705529792,
        "varianceX": 16.205437862270628,
        "varianceY": 827.7317611678372,
        "fractionRightOfX056": 0.01641970093945535,
        "centerUnpaintedFraction": 0.8443551333576909
      },
      "frames": [
        {
          "label": "水だけ",
          "position": 4,
          "material": {
            "time": 1,
            "mass": [
              0,
              0,
              0
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/boundary-local-0.png",
          "sha256": "c7bfb5cfe9793b021bcab693e0e437b427ce3777b7a7164f8961813748214826"
        },
        {
          "label": "青を置く",
          "position": 5,
          "material": {
            "time": 2,
            "mass": [
              158.9372875183712,
              116.51677458809398,
              68.84084011777898
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/boundary-local-1.png",
          "sha256": "89e4134fdb1df40e68fe3901269e2d45aad4565de2d8456b2cb520be1f5c55e0"
        },
        {
          "label": "35秒後",
          "position": 6,
          "material": {
            "time": 37,
            "mass": [
              158.9372865976061,
              116.51677363463658,
              68.84083938391258
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/boundary-local-2.png",
          "sha256": "782c9a12cc8aacd63e41827e4b5186336cb8c8c7e3392a07a94dbbba73ba0209"
        }
      ]
    },
    {
      "id": "boundary-wide",
      "scenePath": "public/sketch/knowledge/exercises/boundary-wide.json",
      "sceneSha256": "f1f36d18136d80cf69820a0106e82e6651fd6f31eae5a51f17231a51042e1bee",
      "replayExact": true,
      "material": {
        "time": 37,
        "mass": [
          158.937291187135,
          116.51677018578307,
          68.84083947177064
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 241.37405624385454,
        "varianceX": 23.012439892845578,
        "varianceY": 829.6212561702596,
        "fractionRightOfX056": 0.09093458032335529,
        "centerUnpaintedFraction": 0.8052612349287541
      },
      "frames": [
        {
          "label": "水だけ",
          "position": 4,
          "material": {
            "time": 1,
            "mass": [
              0,
              0,
              0
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/boundary-wide-0.png",
          "sha256": "c7bfb5cfe9793b021bcab693e0e437b427ce3777b7a7164f8961813748214826"
        },
        {
          "label": "青を置く",
          "position": 5,
          "material": {
            "time": 2,
            "mass": [
              158.93729118053565,
              116.51677228219793,
              68.84084010819132
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/boundary-wide-1.png",
          "sha256": "9e59395697842c99c8d33483532c8d0fa79e8fee9847f5c3a10ac5065fbe455d"
        },
        {
          "label": "35秒後",
          "position": 6,
          "material": {
            "time": 37,
            "mass": [
              158.937291187135,
              116.51677018578307,
              68.84083947177064
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/boundary-wide-2.png",
          "sha256": "da36f4693dc97457f422dd978fc8335d72870924e9f6152e32e4aaa021df61c6"
        }
      ]
    },
    {
      "id": "graded-wash",
      "scenePath": "public/sketch/knowledge/exercises/graded-wash.json",
      "sceneSha256": "b0551e6babfd49139930fe66d725e46e1d6578b6757cbce29f8bf4c314221f23",
      "replayExact": true,
      "material": {
        "time": 21.75,
        "mass": [
          6410.470716022064,
          4699.510009727541,
          2776.580461152768
        ],
        "grid": [
          384,
          288
        ]
      },
      "measurements": {
        "redOpticalDensity": 9900.027474282879,
        "varianceX": 6536.855688938369,
        "varianceY": 1063.0578471749432,
        "fractionRightOfX056": 0.2967045254655595,
        "centerUnpaintedFraction": 0
      },
      "frames": [
        {
          "label": "水だけ",
          "position": 5,
          "material": {
            "time": 1.25,
            "mass": [
              0,
              0,
              0
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/graded-wash-0.png",
          "sha256": "c7bfb5cfe9793b021bcab693e0e437b427ce3777b7a7164f8961813748214826"
        },
        {
          "label": "濃淡を置く",
          "position": 10,
          "material": {
            "time": 3.75,
            "mass": [
              6410.470739219031,
              4699.509994502193,
              2776.5804614672534
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/graded-wash-1.png",
          "sha256": "37a3c46bc93964d7a418a7792438659563a4246e949d4a3650f27f96bf2b5f95"
        },
        {
          "label": "18秒後",
          "position": 11,
          "material": {
            "time": 21.75,
            "mass": [
              6410.470716022064,
              4699.510009727541,
              2776.580461152768
            ],
            "grid": [
              384,
              288
            ]
          },
          "path": "artifacts/technique-data/graded-wash-2.png",
          "sha256": "03ccaef9d3573db5f0bf7915e48876835a2fb22347e321608e1e0892f0513a12"
        }
      ]
    }
  ]
}
