{
  "seeds": [
    0,
    42,
    714
  ],
  "note": "No listening-based seed filtering. Node timings are single samples, not browser benchmarks. Numerical diversity and high scores do not establish human musical quality. All tracks are 4ch/16 bars; all tones auto.",
  "rows": [
    {
      "file": "v29-sanctuary-seed0",
      "group": "scenes",
      "description": "神殿・祈り / seed 0",
      "config": {
        "expression": "thematic-v29",
        "scene": "sanctuary",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 0,
        "bpm": 88,
        "bars": 16,
        "purpose": "event",
        "mood": "gentle",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 3.364063999999999,
      "renderMs": 579.4388670000001,
      "duration": 43.63636363636363,
      "scoreSHA256": "694ee9c1c04c6bd526efde92123d668e973c1b2219da61049e1cf1dc43e6bec2",
      "wavSHA256": "4b0eabce2414ec93a90cadc153d09601f2756047d93fda47ad9af33371c567a9",
      "loopSeam": 3.676912233671345e-25,
      "notes": {
        "lead": 32,
        "harmony": 25,
        "bass": 16,
        "noise": 10
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・解放"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 32,
          "kind": "backing-breath"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-court-seed0",
      "group": "scenes",
      "description": "城・王宮 / seed 0",
      "config": {
        "expression": "thematic-v29",
        "scene": "court",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 0,
        "bpm": 112,
        "bars": 16,
        "purpose": "title",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 1.0383229999999912,
      "renderMs": 257.91391899999996,
      "duration": 34.285714285714285,
      "scoreSHA256": "9c0207812158f3a0feafb0a598dd35406505f10520e4ace8886ec847aa5a59d8",
      "wavSHA256": "28a1ae58ce26c8319ebb8374b014be428d97ee4404ae04425a56a6c935501cb9",
      "loopSeam": 6.301377197814872e-10,
      "notes": {
        "lead": 62,
        "harmony": 16,
        "bass": 65,
        "noise": 66
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・対照"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "bass-approach"
        },
        {
          "beat": 32,
          "kind": "noise-pickup"
        },
        {
          "beat": 48,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-festival-seed0",
      "group": "scenes",
      "description": "酒場・祭り / seed 0",
      "config": {
        "expression": "thematic-v29",
        "scene": "festival",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 0,
        "bpm": 136,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.8807970000000296,
      "renderMs": 164.50847799999997,
      "duration": 28.235294117647058,
      "scoreSHA256": "33936e6f60bbf600e7c8725e045c0d74dcb267d64beb851af3a76260d18c77a4",
      "wavSHA256": "c0d8c016f363f6a7fb1531a4a3cde8a798e6e7b73f0ec84253d970fe010b00b5",
      "loopSeam": 5.611155984297511e-11,
      "notes": {
        "lead": 72,
        "harmony": 30,
        "bass": 49,
        "noise": 52
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・応答"
        },
        {
          "start": 16,
          "end": 24,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・応答"
        },
        {
          "start": 48,
          "end": 56,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "space"
        },
        {
          "beat": 16,
          "kind": "noise-pickup"
        },
        {
          "beat": 24,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "noise-pickup"
        },
        {
          "beat": 40,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "backing-breath"
        },
        {
          "beat": 56,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-rest-seed0",
      "group": "scenes",
      "description": "安らぎ・宿 / seed 0",
      "config": {
        "expression": "thematic-v29",
        "scene": "rest",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 0,
        "bpm": 80,
        "bars": 16,
        "purpose": "town",
        "mood": "gentle",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.47970600000007835,
      "renderMs": 378.90334600000006,
      "duration": 48,
      "scoreSHA256": "ceedccd97041779b4e5b8507e7a77601c434356e1bb0db39ea765ce9efb69bc8",
      "wavSHA256": "812eee3795d9bc81edde5715ccee63fe3a519d153a136eadfe830ff5c276c2a8",
      "loopSeam": 4.2515470310977577e-14,
      "notes": {
        "lead": 32,
        "harmony": 25,
        "bass": 33,
        "noise": 10
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・呼びかけ"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "noise-pickup"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-loss-seed0",
      "group": "scenes",
      "description": "悲劇・喪失 / seed 0",
      "config": {
        "expression": "thematic-v29",
        "scene": "loss",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 0,
        "bpm": 84,
        "bars": 16,
        "purpose": "event",
        "mood": "wistful",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.46849300000008043,
      "renderMs": 324.657545,
      "duration": 45.714285714285715,
      "scoreSHA256": "cbb1c7a349e09b1457f9bd63235972f37768ebbeaffef7b28cc635e5b4b6bc4f",
      "wavSHA256": "441802376f5f7d725957cb5e6fc8cd54cbc1fc967266f4e9374a0dfb4fd96752",
      "loopSeam": 1.1834977442504169e-13,
      "notes": {
        "lead": 36,
        "harmony": 21,
        "bass": 30,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・対照"
        },
        {
          "start": 32,
          "end": 48,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・余白"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "bass-approach"
        },
        {
          "beat": 32,
          "kind": "noise-pickup"
        },
        {
          "beat": 48,
          "kind": "bass-approach"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-ruins-seed0",
      "group": "scenes",
      "description": "不気味な廃墟 / seed 0",
      "config": {
        "expression": "thematic-v29",
        "scene": "ruins",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 0,
        "bpm": 88,
        "bars": 16,
        "purpose": "dungeon",
        "mood": "dark",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.5052160000000185,
      "renderMs": 249.15501499999982,
      "duration": 43.63636363636363,
      "scoreSHA256": "2a95c38a5ebf02544c3f1b3327a494e92f833357427e0576155b356460c5b6e1",
      "wavSHA256": "736bc3731950d80330b4588b87ed77e963ff3254d8c798eaca08872534603785",
      "loopSeam": 3.5260820285930874e-25,
      "notes": {
        "lead": 38,
        "harmony": 15,
        "bass": 16,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 16,
          "end": 24,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "silence",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 48,
          "end": 56,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "backing-breath"
        },
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 24,
          "kind": "noise-pickup"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 40,
          "kind": "backing-breath"
        },
        {
          "beat": 48,
          "kind": "space"
        },
        {
          "beat": 56,
          "kind": "backing-breath"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-escape-seed0",
      "group": "scenes",
      "description": "緊迫・逃走 / seed 0",
      "config": {
        "expression": "thematic-v29",
        "scene": "escape",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 0,
        "bpm": 168,
        "bars": 16,
        "purpose": "battle",
        "mood": "tense",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 1.8649610000002212,
      "renderMs": 146.10722699999997,
      "duration": 22.857142857142858,
      "scoreSHA256": "906088ad6123e7ced00880f5ade2f16b18ae52a8ab27ddc6df7c5d1460be159f",
      "wavSHA256": "826105fafa2d5e7a225630fb3fa064b9eefce5f32c6e95ea3ec193857c29815b",
      "loopSeam": 3.497632405924378e-9,
      "notes": {
        "lead": 108,
        "harmony": 20,
        "bass": 128,
        "noise": 129
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 16,
          "end": 24,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・対照"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "rise",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 48,
          "end": 56,
          "role": "contrast",
          "cycle": 1,
          "theme": "B",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・対照"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "bass-approach"
        },
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 24,
          "kind": "bass-approach"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 40,
          "kind": "noise-pickup"
        },
        {
          "beat": 48,
          "kind": "space"
        },
        {
          "beat": 56,
          "kind": "bass-approach"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-ending-seed0",
      "group": "scenes",
      "description": "エンディング・再起 / seed 0",
      "config": {
        "expression": "thematic-v29",
        "scene": "ending",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 0,
        "bpm": 104,
        "bars": 16,
        "purpose": "field",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.5312589999998636,
      "renderMs": 371.52905100000044,
      "duration": 36.92307692307692,
      "scoreSHA256": "c3e55605b1d26475dacf2e139e44ccb608664a35d8b36b5f4fb37bfd3eefcc85",
      "wavSHA256": "901a3bc55826168de92a3bd17e1154351bbc18dfacc7aa05f750ab63e1d90ff2",
      "loopSeam": 6.118903145238512e-20,
      "notes": {
        "lead": 46,
        "harmony": 19,
        "bass": 49,
        "noise": 64
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・対照"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "bass-approach"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-sanctuary-seed42",
      "group": "scenes",
      "description": "神殿・祈り / seed 42",
      "config": {
        "expression": "thematic-v29",
        "scene": "sanctuary",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 42,
        "bpm": 88,
        "bars": 16,
        "purpose": "event",
        "mood": "gentle",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.4487330000001748,
      "renderMs": 323.280804,
      "duration": 43.63636363636363,
      "scoreSHA256": "6d7085ddd5bf1b088a9fec002ef53eae00c8ca03176e02447c3107b307a572ee",
      "wavSHA256": "9ef1d015833b49cedabfe81df3ed15044e52efe4fde05a9520a99968337aeee2",
      "loopSeam": 3.676912233671345e-25,
      "notes": {
        "lead": 32,
        "harmony": 25,
        "bass": 17,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・解放"
        },
        {
          "start": 32,
          "end": 48,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・応答"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-court-seed42",
      "group": "scenes",
      "description": "城・王宮 / seed 42",
      "config": {
        "expression": "thematic-v29",
        "scene": "court",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 42,
        "bpm": 112,
        "bars": 16,
        "purpose": "title",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.7115629999998418,
      "renderMs": 207.38408800000025,
      "duration": 34.285714285714285,
      "scoreSHA256": "94f219138d6c4f59406a404cdcf47866a23a9df00b005879225c81e215197763",
      "wavSHA256": "711e481763d293320c7f5e6a30d4983c9c9dd3fb304221c4b38c74b20cb0370f",
      "loopSeam": 6.301377197814872e-10,
      "notes": {
        "lead": 62,
        "harmony": 17,
        "bass": 64,
        "noise": 68
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・対照"
        },
        {
          "start": 32,
          "end": 48,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "noise-pickup"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-festival-seed42",
      "group": "scenes",
      "description": "酒場・祭り / seed 42",
      "config": {
        "expression": "thematic-v29",
        "scene": "festival",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 42,
        "bpm": 136,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.7980069999998705,
      "renderMs": 145.30049199999985,
      "duration": 28.235294117647058,
      "scoreSHA256": "c3ed226ea9427051ffb662e4114e3ddfd27b64c962dba665c7cd7e950fef8ec2",
      "wavSHA256": "6df4dd3bc7d9e9bf3a039b74748e36e877fa8fc051737f69ecb459103a3444a1",
      "loopSeam": 5.611155984297511e-11,
      "notes": {
        "lead": 70,
        "harmony": 31,
        "bass": 50,
        "noise": 52
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・対照"
        },
        {
          "start": 16,
          "end": 24,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・応答"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "contrast",
          "cycle": 1,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・対照"
        },
        {
          "start": 48,
          "end": 56,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・応答"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "noise-pickup"
        },
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 24,
          "kind": "bass-approach"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 40,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "space"
        },
        {
          "beat": 56,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-rest-seed42",
      "group": "scenes",
      "description": "安らぎ・宿 / seed 42",
      "config": {
        "expression": "thematic-v29",
        "scene": "rest",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 42,
        "bpm": 80,
        "bars": 16,
        "purpose": "town",
        "mood": "gentle",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.4787480000004507,
      "renderMs": 344.2342610000005,
      "duration": 48,
      "scoreSHA256": "5d05b6b8fdcf95efb3fb37fa4b713870a3eafb70efa15a012e017aee0944d906",
      "wavSHA256": "3664337b8df64c1e2eb2c9e656eb7bafd5351d95a06a48a20f9c5a51ceac1702",
      "loopSeam": 7.01504826450261e-14,
      "notes": {
        "lead": 32,
        "harmony": 24,
        "bass": 32,
        "noise": 10
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・呼びかけ"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 32,
          "kind": "noise-pickup"
        },
        {
          "beat": 48,
          "kind": "backing-breath"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-loss-seed42",
      "group": "scenes",
      "description": "悲劇・喪失 / seed 42",
      "config": {
        "expression": "thematic-v29",
        "scene": "loss",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 42,
        "bpm": 84,
        "bars": 16,
        "purpose": "event",
        "mood": "wistful",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.6455159999995885,
      "renderMs": 401.261845,
      "duration": 45.714285714285715,
      "scoreSHA256": "cc3ed70e94ab4ed8dface02e64e161b23d597906beec44d1d7cb68928c3e3484",
      "wavSHA256": "22659493ef2f51af9f12ee4ce243303deb4212ab3fbf263c2d4fbd8b303e18cd",
      "loopSeam": 1.1834977442504169e-13,
      "notes": {
        "lead": 36,
        "harmony": 20,
        "bass": 29,
        "noise": 6
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・余白"
        },
        {
          "start": 32,
          "end": 48,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・対照"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "bass-approach"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "backing-breath"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-ruins-seed42",
      "group": "scenes",
      "description": "不気味な廃墟 / seed 42",
      "config": {
        "expression": "thematic-v29",
        "scene": "ruins",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 42,
        "bpm": 88,
        "bars": 16,
        "purpose": "dungeon",
        "mood": "dark",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.483831999999893,
      "renderMs": 305.00463000000036,
      "duration": 43.63636363636363,
      "scoreSHA256": "14f5767d6abee22e44714df6af82fb41936644edad21e5c7acd1737a52654018",
      "wavSHA256": "6690f8af3641b8085435d01f8754a103711eae999f6d40934c2012473fc612a0",
      "loopSeam": 3.5260820285930874e-25,
      "notes": {
        "lead": 38,
        "harmony": 15,
        "bass": 17,
        "noise": 10
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 16,
          "end": 24,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "silence",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 48,
          "end": 56,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "backing-breath"
        },
        {
          "beat": 16,
          "kind": "noise-pickup"
        },
        {
          "beat": 24,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 40,
          "kind": "noise-pickup"
        },
        {
          "beat": 48,
          "kind": "backing-breath"
        },
        {
          "beat": 56,
          "kind": "bass-approach"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-escape-seed42",
      "group": "scenes",
      "description": "緊迫・逃走 / seed 42",
      "config": {
        "expression": "thematic-v29",
        "scene": "escape",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 42,
        "bpm": 168,
        "bars": 16,
        "purpose": "battle",
        "mood": "tense",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 1.1930309999997917,
      "renderMs": 136.98969000000034,
      "duration": 22.857142857142858,
      "scoreSHA256": "57c476108b39a5d62d183e484f48c57061390643b7b0808d7cad77f33936858d",
      "wavSHA256": "8d8f047a754614fd0db3bc972b80c01d0de547832c05a9eef3592a81e82bb560",
      "loopSeam": 3.497632405924378e-9,
      "notes": {
        "lead": 108,
        "harmony": 18,
        "bass": 128,
        "noise": 131
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 16,
          "end": 24,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・対照"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "rise",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 48,
          "end": 56,
          "role": "contrast",
          "cycle": 1,
          "theme": "B",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・対照"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "backing-breath"
        },
        {
          "beat": 16,
          "kind": "noise-pickup"
        },
        {
          "beat": 24,
          "kind": "space"
        },
        {
          "beat": 32,
          "kind": "noise-pickup"
        },
        {
          "beat": 40,
          "kind": "backing-breath"
        },
        {
          "beat": 48,
          "kind": "bass-approach"
        },
        {
          "beat": 56,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-ending-seed42",
      "group": "scenes",
      "description": "エンディング・再起 / seed 42",
      "config": {
        "expression": "thematic-v29",
        "scene": "ending",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 42,
        "bpm": 104,
        "bars": 16,
        "purpose": "field",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.3322299999999814,
      "renderMs": 314.5484210000004,
      "duration": 36.92307692307692,
      "scoreSHA256": "2b3966b7adac7e96b8c448230e6d373518c776cbefcf8d2dd61e41651f46636d",
      "wavSHA256": "017e74378cf8c7b01432e5c423636ce367aecf762c54cf03e4a16ea1d36e64ed",
      "loopSeam": 6.118903145238512e-20,
      "notes": {
        "lead": 44,
        "harmony": 21,
        "bass": 49,
        "noise": 66
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・対照"
        },
        {
          "start": 32,
          "end": 48,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・解放"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "noise-pickup"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "bass-approach"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-sanctuary-seed714",
      "group": "scenes",
      "description": "神殿・祈り / seed 714",
      "config": {
        "expression": "thematic-v29",
        "scene": "sanctuary",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 88,
        "bars": 16,
        "purpose": "event",
        "mood": "gentle",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.23813400000017282,
      "renderMs": 341.3789630000001,
      "duration": 43.63636363636363,
      "scoreSHA256": "bfb129c4c1d9113c944c66de92ca3f0cc272761947619e7d39c4ded6bcf3842c",
      "wavSHA256": "9ffddfeb80494666316874ad8fa51d96785bda13f4f6e5c31846c1bca6a6af79",
      "loopSeam": 3.676912233671345e-25,
      "notes": {
        "lead": 32,
        "harmony": 25,
        "bass": 17,
        "noise": 10
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・解放"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "noise-pickup"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "bass-approach"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-court-seed714",
      "group": "scenes",
      "description": "城・王宮 / seed 714",
      "config": {
        "expression": "thematic-v29",
        "scene": "court",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 112,
        "bars": 16,
        "purpose": "title",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.667051999999785,
      "renderMs": 229.11312699999962,
      "duration": 34.285714285714285,
      "scoreSHA256": "ec90e3854e735a7b01c4f740a33acac7e18cffc6f5169880963563c6fffd4e35",
      "wavSHA256": "00cc013814d9c888fe06ee8dc6cd38161ed5362514854ab27152395a9ec59b49",
      "loopSeam": 6.301377197814872e-10,
      "notes": {
        "lead": 62,
        "harmony": 16,
        "bass": 65,
        "noise": 64
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・対照"
        },
        {
          "start": 32,
          "end": 48,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-festival-seed714",
      "group": "scenes",
      "description": "酒場・祭り / seed 714",
      "config": {
        "expression": "thematic-v29",
        "scene": "festival",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 136,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.7241640000002008,
      "renderMs": 164.18771199999992,
      "duration": 28.235294117647058,
      "scoreSHA256": "52e6b7ff35db37f39197b89aa8ae86b4eb4c2065dda4e30e28f9c065a0f36e36",
      "wavSHA256": "fc9a26e4af42c499963f829cefc04d900256a1e0687358c0d9f130f0eed182b9",
      "loopSeam": 5.611155984297511e-11,
      "notes": {
        "lead": 72,
        "harmony": 29,
        "bass": 49,
        "noise": 50
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・応答"
        },
        {
          "start": 16,
          "end": 24,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・応答"
        },
        {
          "start": 48,
          "end": 56,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "backing-breath"
        },
        {
          "beat": 16,
          "kind": "bass-approach"
        },
        {
          "beat": 24,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 40,
          "kind": "backing-breath"
        },
        {
          "beat": 48,
          "kind": "space"
        },
        {
          "beat": 56,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-rest-seed714",
      "group": "scenes",
      "description": "安らぎ・宿 / seed 714",
      "config": {
        "expression": "thematic-v29",
        "scene": "rest",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 80,
        "bars": 16,
        "purpose": "town",
        "mood": "gentle",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.6347710000000006,
      "renderMs": 402.06227299999955,
      "duration": 48,
      "scoreSHA256": "e7559ec5ad065ed3d77c931e6a74a6750baf852f03d2513f3d35307cc4f785dd",
      "wavSHA256": "5e68a68e8c2badf1cc9c0afaba5c7f93b86462b8104eb3def14d3266137377e6",
      "loopSeam": 4.2515470310977577e-14,
      "notes": {
        "lead": 32,
        "harmony": 23,
        "bass": 33,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・呼びかけ"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "backing-breath"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-loss-seed714",
      "group": "scenes",
      "description": "悲劇・喪失 / seed 714",
      "config": {
        "expression": "thematic-v29",
        "scene": "loss",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 84,
        "bars": 16,
        "purpose": "event",
        "mood": "wistful",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 2.268822,
      "renderMs": 320.9965320000001,
      "duration": 45.714285714285715,
      "scoreSHA256": "f9fa344a825bdaabc20910187cf8d4b9cfaf743270a22df03747c95856af8073",
      "wavSHA256": "bbb258873102659beea9477f5a306f2ee562d4a645a7401425774836d14f9dfc",
      "loopSeam": 1.1834977442504169e-13,
      "notes": {
        "lead": 36,
        "harmony": 21,
        "bass": 29,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・対照"
        },
        {
          "start": 32,
          "end": 48,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・余白"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "悲劇・喪失・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-ruins-seed714",
      "group": "scenes",
      "description": "不気味な廃墟 / seed 714",
      "config": {
        "expression": "thematic-v29",
        "scene": "ruins",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 88,
        "bars": 16,
        "purpose": "dungeon",
        "mood": "dark",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.364795999999842,
      "renderMs": 234.28350799999953,
      "duration": 43.63636363636363,
      "scoreSHA256": "eb1fb3b509658d5cc00d6765e913ad0589379383b3e285e7f2b51fb855333a21",
      "wavSHA256": "e492e096633978e03d6c45a906177ca1aad38b99752f0077efe9baea58300873",
      "loopSeam": 3.5260820285930874e-25,
      "notes": {
        "lead": 38,
        "harmony": 15,
        "bass": 19,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 16,
          "end": 24,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "silence",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 48,
          "end": 56,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "bass-approach"
        },
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 24,
          "kind": "bass-approach"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 40,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        },
        {
          "beat": 56,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-escape-seed714",
      "group": "scenes",
      "description": "緊迫・逃走 / seed 714",
      "config": {
        "expression": "thematic-v29",
        "scene": "escape",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 168,
        "bars": 16,
        "purpose": "battle",
        "mood": "tense",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 1.1633089999995718,
      "renderMs": 126.66074899999876,
      "duration": 22.857142857142858,
      "scoreSHA256": "72ee5be92906025db4a968cbfa334bc52e167cb2dcd6c5f93d949ff548a005ff",
      "wavSHA256": "c0df665298823d7ddd1d11efcbfd4ce011346a15fb15c84ce2681388760d45b2",
      "loopSeam": 3.497632405924378e-9,
      "notes": {
        "lead": 110,
        "harmony": 17,
        "bass": 128,
        "noise": 129
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・応答"
        },
        {
          "start": 16,
          "end": 24,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・応答"
        },
        {
          "start": 48,
          "end": 56,
          "role": "rise",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "bass-approach"
        },
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 24,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 40,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        },
        {
          "beat": 56,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-ending-seed714",
      "group": "scenes",
      "description": "エンディング・再起 / seed 714",
      "config": {
        "expression": "thematic-v29",
        "scene": "ending",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 104,
        "bars": 16,
        "purpose": "field",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.43187399999987974,
      "renderMs": 277.3417359999985,
      "duration": 36.92307692307692,
      "scoreSHA256": "b56b01c74819e65fc3c59e59e5b6618ad2b8b9c9e6699812fdecaa45d112ff4c",
      "wavSHA256": "8d7c536ae56e9355483a7ab7fb65d42c56a079b7a17179852e2d96f72a8a4704",
      "loopSeam": 6.121880995443703e-20,
      "notes": {
        "lead": 44,
        "harmony": 21,
        "bass": 49,
        "noise": 66
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・対照"
        },
        {
          "start": 32,
          "end": 48,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・解放"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-equal-sanctuary",
      "group": "equalized",
      "description": "統一条件 / 神殿・祈り",
      "config": {
        "expression": "thematic-v29",
        "scene": "sanctuary",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 0.3032789999997476,
      "renderMs": 234.79764500000056,
      "duration": 32,
      "scoreSHA256": "9eb9863d4b8dba72a0c1bc805a40fbc5808472a98a4a1612df34e0f1d5beeb0c",
      "wavSHA256": "29469e5aa000199532e53ddedbd84f3f358b9c50b0dd76c189c8d493a89d33c1",
      "loopSeam": 1.15074058095927e-19,
      "notes": {
        "lead": 32,
        "harmony": 26,
        "bass": 17,
        "noise": 10
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・解放"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "神殿・祈り・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "noise-pickup"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "bass-approach"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-equal-court",
      "group": "equalized",
      "description": "統一条件 / 城・王宮",
      "config": {
        "expression": "thematic-v29",
        "scene": "court",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 0.5824499999998807,
      "renderMs": 259.39890599999853,
      "duration": 32,
      "scoreSHA256": "6c22d2ca1c41a11fbb80b5089cd11ea8fea5796eeb2272174281e221ced7c417",
      "wavSHA256": "3a182bb0426db00c68e158d53ef7fa98500f4a0b70643dd9808859ba855e490e",
      "loopSeam": 7.2799366535036825e-9,
      "notes": {
        "lead": 62,
        "harmony": 17,
        "bass": 65,
        "noise": 64
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・対照"
        },
        {
          "start": 32,
          "end": 48,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-equal-festival",
      "group": "equalized",
      "description": "統一条件 / 酒場・祭り",
      "config": {
        "expression": "thematic-v29",
        "scene": "festival",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 0.6556000000000495,
      "renderMs": 171.8523669999995,
      "duration": 32,
      "scoreSHA256": "71a211e79d50e110db43b780a40e83d5fdb69b8d76f05460af14925bd41d2059",
      "wavSHA256": "129e99a8c5154521aa92b021fe366bcb833bfd0a0e27790e24d5fb405558b268",
      "loopSeam": 1.811684136043823e-11,
      "notes": {
        "lead": 72,
        "harmony": 29,
        "bass": 49,
        "noise": 50
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・応答"
        },
        {
          "start": 16,
          "end": 24,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・応答"
        },
        {
          "start": 48,
          "end": 56,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・呼びかけ"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "酒場・祭り・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "backing-breath"
        },
        {
          "beat": 16,
          "kind": "bass-approach"
        },
        {
          "beat": 24,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 40,
          "kind": "backing-breath"
        },
        {
          "beat": 48,
          "kind": "space"
        },
        {
          "beat": 56,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-equal-rest",
      "group": "equalized",
      "description": "統一条件 / 安らぎ・宿",
      "config": {
        "expression": "thematic-v29",
        "scene": "rest",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 0.3808020000014949,
      "renderMs": 270.4010989999988,
      "duration": 32,
      "scoreSHA256": "e0f053bfeac43fd31298d7367da96d945f365b1135f70efca1bd745dc05b67e9",
      "wavSHA256": "d970498ac8e0a5894807427245cdf9048a3d4f2b112107b000d5cbd1ff9492e8",
      "loopSeam": 4.4153569689342476e-12,
      "notes": {
        "lead": 32,
        "harmony": 24,
        "bass": 33,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・呼びかけ"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "安らぎ・宿・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "backing-breath"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-equal-loss",
      "group": "equalized",
      "description": "統一条件 / 悲劇・喪失",
      "config": {
        "expression": "thematic-v29",
        "scene": "loss",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 0.40908699999999953,
      "renderMs": 313.33038899999883,
      "duration": 32,
      "scoreSHA256": "2e9e8407c9c6b1cc84f6c669e6ea8320565ae561423b6e3b4a07eaf91102c300",
      "wavSHA256": "bdeffa9a5c5fe432132f2e17b348f2baf512a4e49c9c3bb062f27e123b387dfd",
      "loopSeam": 7.285283487590277e-12,
      "notes": {
        "lead": 36,
        "harmony": 22,
        "bass": 29,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "悲劇・喪失・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "悲劇・喪失・対照"
        },
        {
          "start": 32,
          "end": 48,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "悲劇・喪失・余白"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "悲劇・喪失・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-equal-ruins",
      "group": "equalized",
      "description": "統一条件 / 不気味な廃墟",
      "config": {
        "expression": "thematic-v29",
        "scene": "ruins",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 0.4123440000003029,
      "renderMs": 193.18621100000018,
      "duration": 32,
      "scoreSHA256": "c13ef2efaa4611e65b29420029d4e37f3c1e178f85d12d13602f27971bb322fd",
      "wavSHA256": "ab8325c5679f2298c2386c06857af75fcbc3cc6a8c16500eda42f29dcee1efa9",
      "loopSeam": 1.122616440132467e-19,
      "notes": {
        "lead": 38,
        "harmony": 16,
        "bass": 19,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 16,
          "end": 24,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "不気味な廃墟・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "silence",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 48,
          "end": 56,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "不気味な廃墟・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "bass-approach"
        },
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 24,
          "kind": "bass-approach"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 40,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        },
        {
          "beat": 56,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-equal-escape",
      "group": "equalized",
      "description": "統一条件 / 緊迫・逃走",
      "config": {
        "expression": "thematic-v29",
        "scene": "escape",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 1.4838020000006509,
      "renderMs": 176.73452199999883,
      "duration": 32,
      "scoreSHA256": "101af6f66e712fe3eebf4221f688c9d06e768516e1c762da67acc3c123871d87",
      "wavSHA256": "c26fc059be1a8cacb8d38a423f6e4b78cbeee32a46e732293b59152f21ccf6d1",
      "loopSeam": 3.818229288299335e-9,
      "notes": {
        "lead": 110,
        "harmony": 17,
        "bass": 128,
        "noise": 129
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "緊迫・逃走・応答"
        },
        {
          "start": 16,
          "end": 24,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "緊迫・逃走・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "緊迫・逃走・応答"
        },
        {
          "start": 48,
          "end": 56,
          "role": "rise",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "緊迫・逃走・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "bass-approach"
        },
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 24,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 40,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        },
        {
          "beat": 56,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-equal-ending",
      "group": "equalized",
      "description": "統一条件 / エンディング・再起",
      "config": {
        "expression": "thematic-v29",
        "scene": "ending",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "town",
        "mood": "bright",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 0.48848700000053213,
      "renderMs": 229.84104000000116,
      "duration": 32,
      "scoreSHA256": "2b4e2b40af5980ab16a32d7a54c87eed88ff41a4badeff88ac584562739a826b",
      "wavSHA256": "2667a55985a456fd9cd500d29f021c226aa1160286ac33a36417d57ece14f767",
      "loopSeam": 3.957814385604922e-18,
      "notes": {
        "lead": 44,
        "harmony": 22,
        "bass": 49,
        "noise": 66
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・対照"
        },
        {
          "start": 32,
          "end": 48,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・解放"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "エンディング・再起・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-idiom-march",
      "group": "idioms",
      "description": "城・王宮 / 勇壮な行進",
      "config": {
        "expression": "thematic-v29",
        "scene": "court",
        "idiom": "march",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "title",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.6306290000011359,
      "renderMs": 185.03641699999935,
      "duration": 32,
      "scoreSHA256": "72aa15f794b00c64922e8ed21115aa5c4d6c543b2b6cbcb56e3432f765dfd781",
      "wavSHA256": "cb8fce1f71f63a660b3908e0160cf46b3671c01cf2bbb0f2e3f7a69732c9d155",
      "loopSeam": 3.957867325164125e-18,
      "notes": {
        "lead": 62,
        "harmony": 11,
        "bass": 65,
        "noise": 64
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・応答"
        },
        {
          "start": 32,
          "end": 48,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・解放"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-idiom-dance",
      "group": "idioms",
      "description": "城・王宮 / 軽快な舞曲",
      "config": {
        "expression": "thematic-v29",
        "scene": "court",
        "idiom": "dance",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "title",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.8484320000006846,
      "renderMs": 178.6887859999988,
      "duration": 32,
      "scoreSHA256": "ece420914a2ffc0fb94869ff17191360a76e3e9bba074ddcbdd1b9119dbbf2a9",
      "wavSHA256": "324a989151128a4d43c3b098011cad3fbdffbf79afe5eb591f8f2735c805326e",
      "loopSeam": 1.581579311960013e-11,
      "notes": {
        "lead": 64,
        "harmony": 37,
        "bass": 50,
        "noise": 50
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・応答"
        },
        {
          "start": 16,
          "end": 24,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・応答"
        },
        {
          "start": 48,
          "end": 56,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "backing-breath"
        },
        {
          "beat": 16,
          "kind": "bass-approach"
        },
        {
          "beat": 24,
          "kind": "space"
        },
        {
          "beat": 32,
          "kind": "backing-breath"
        },
        {
          "beat": 40,
          "kind": "noise-pickup"
        },
        {
          "beat": 48,
          "kind": "backing-breath"
        },
        {
          "beat": 56,
          "kind": "bass-approach"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-idiom-ballad",
      "group": "idioms",
      "description": "城・王宮 / 叙情的バラード",
      "config": {
        "expression": "thematic-v29",
        "scene": "court",
        "idiom": "ballad",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "title",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.5099709999994957,
      "renderMs": 203.52828500000032,
      "duration": 32,
      "scoreSHA256": "75b4b3590fe767b813b01e4eb8bd6257a99ce9e2041a631723e6f446a5d7dbe8",
      "wavSHA256": "69e69e77241fb2c9b1c62ed1bbfc5023b7f36ef94ff4e03667f5d71e08c331eb",
      "loopSeam": 6.510173227949553e-27,
      "notes": {
        "lead": 50,
        "harmony": 10,
        "bass": 29,
        "noise": 28
      },
      "sections": [
        {
          "start": 0,
          "end": 16,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 16,
          "end": 32,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・余白"
        },
        {
          "start": 32,
          "end": 48,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・解放"
        },
        {
          "start": 48,
          "end": 64,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 16,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-idiom-mystery",
      "group": "idioms",
      "description": "城・王宮 / ミステリアス",
      "config": {
        "expression": "thematic-v29",
        "scene": "court",
        "idiom": "mystery",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "title",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.4614529999998922,
      "renderMs": 162.3452010000001,
      "duration": 32,
      "scoreSHA256": "e89b625caef53716470ca237bfce087036498dc31ee8b9995e9788bf2f679c9a",
      "wavSHA256": "b37ffbe730bad1c6bae192e131a879661cd9a4b4642bfc6f2fbcd4d4a74156a8",
      "loopSeam": 2.762834944715397e-21,
      "notes": {
        "lead": 54,
        "harmony": 15,
        "bass": 30,
        "noise": 31
      },
      "sections": [
        {
          "start": 0,
          "end": 12,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 12,
          "end": 24,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・余白"
        },
        {
          "start": 24,
          "end": 36,
          "role": "contrast",
          "cycle": 0,
          "theme": "B",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・対照"
        },
        {
          "start": 36,
          "end": 48,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        },
        {
          "start": 48,
          "end": 60,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 60,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 12,
          "kind": "backing-breath"
        },
        {
          "beat": 24,
          "kind": "bass-approach"
        },
        {
          "beat": 36,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "backing-breath"
        },
        {
          "beat": 60,
          "kind": "noise-pickup"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-idiom-comic",
      "group": "idioms",
      "description": "城・王宮 / コミカル",
      "config": {
        "expression": "thematic-v29",
        "scene": "court",
        "idiom": "comic",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 120,
        "bars": 16,
        "purpose": "title",
        "mood": "heroic",
        "sound": "classic",
        "channels": 4,
        "curve": [
          40,
          30,
          75,
          45
        ]
      },
      "composeMs": 0.6940389999999752,
      "renderMs": 161.03760899999907,
      "duration": 32,
      "scoreSHA256": "2673c09991f6f01fb085fa046ec4fdcfc627dd3406b9e97622015c0a5677f048",
      "wavSHA256": "0d7732cd68a06f5cf317f6d52a45b4e779a014a9c2a9036aa4c7f88ca7ebc18d",
      "loopSeam": 1.5798251595811053e-11,
      "notes": {
        "lead": 68,
        "harmony": 30,
        "bass": 58,
        "noise": 58
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・応答"
        },
        {
          "start": 16,
          "end": 24,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・余白"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・応答"
        },
        {
          "start": 48,
          "end": 56,
          "role": "silence",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・余白"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": true,
          "label": "城・王宮・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "backing-breath"
        },
        {
          "beat": 16,
          "kind": "bass-approach"
        },
        {
          "beat": 24,
          "kind": "space"
        },
        {
          "beat": 32,
          "kind": "backing-breath"
        },
        {
          "beat": 40,
          "kind": "noise-pickup"
        },
        {
          "beat": 48,
          "kind": "backing-breath"
        },
        {
          "beat": 56,
          "kind": "bass-approach"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-old-ruins",
      "group": "legacy",
      "description": "旧おすすめ / 神秘的な遺跡（同一条件・音色auto）",
      "config": {
        "expression": "thematic-v28",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 88,
        "bars": 16,
        "purpose": "dungeon",
        "mood": "dark",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 38.22706199999993,
      "renderMs": 541.8438760000008,
      "duration": 43.63636363636363,
      "scoreSHA256": "3546b7126e4f42228c76a04964e8db6ec64fed83e323ea2dea8e7b9a349549a5",
      "wavSHA256": "2afde643196f452fed6e89fa44e2f8f350c6fe9cc6e9fe2da44d16edd6b5a024",
      "loopSeam": 0.0001990358578041196,
      "notes": {
        "lead": 95,
        "harmony": 38,
        "bass": 107,
        "noise": 118
      },
      "transitions": [],
      "selection": {
        "applied": false,
        "reason": "outside-battle-180-4ch-melody"
      }
    },
    {
      "file": "v29-new-ruins",
      "group": "legacy",
      "description": "専用規則 / 不気味な廃墟（同一条件・音色auto）",
      "config": {
        "expression": "thematic-v29",
        "scene": "ruins",
        "idiom": "auto",
        "variation": "standard",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 88,
        "bars": 16,
        "purpose": "dungeon",
        "mood": "dark",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 0.5450920000002952,
      "renderMs": 269.6077029999997,
      "duration": 43.63636363636363,
      "scoreSHA256": "5e9476fa4b4bb2e1e5878436644eecae04464ef48ed34da09c9782a723e20a35",
      "wavSHA256": "3ab98d6fc63c1aada156bb4318352cbab5104ee8c87493c421bcc452bc2005e0",
      "loopSeam": 3.5260820285930874e-25,
      "notes": {
        "lead": 38,
        "harmony": 16,
        "bass": 19,
        "noise": 8
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "silence",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 16,
          "end": 24,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "silence",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・余白"
        },
        {
          "start": 48,
          "end": 56,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・応答"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "不気味な廃墟・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "bass-approach"
        },
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 24,
          "kind": "bass-approach"
        },
        {
          "beat": 32,
          "kind": "space"
        },
        {
          "beat": 40,
          "kind": "bass-approach"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        },
        {
          "beat": 56,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    },
    {
      "file": "v29-old-pursuit",
      "group": "legacy",
      "description": "旧おすすめ / 忍び寄る危機（同一条件・音色auto）",
      "config": {
        "expression": "thematic-v28",
        "variation": "bold",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [
          "surge",
          "tension"
        ],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 144,
        "bars": 16,
        "purpose": "battle",
        "mood": "tense",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 32.426070999999865,
      "renderMs": 196.7490570000009,
      "duration": 26.666666666666668,
      "scoreSHA256": "439a886be6bc5b2acbe6b03b09c03678b866e38c01c4d5c236056751aa0dae4b",
      "wavSHA256": "4f68c62aaab3b8ffddaca7de1f3de5cf0124b2c0d5a17c047bf1a92fed31453b",
      "loopSeam": 0.0000727139413356781,
      "notes": {
        "lead": 131,
        "harmony": 38,
        "bass": 125,
        "noise": 118
      },
      "transitions": [],
      "selection": {
        "applied": false,
        "reason": "outside-battle-180-4ch-melody"
      }
    },
    {
      "file": "v29-new-pursuit",
      "group": "legacy",
      "description": "専用規則 / 緊迫・逃走（同一条件・音色auto）",
      "config": {
        "expression": "thematic-v29",
        "scene": "escape",
        "idiom": "auto",
        "variation": "bold",
        "style": "rhythm",
        "modulation": "none",
        "flavors": [
          "surge",
          "tension"
        ],
        "version": "0.20.0",
        "seed": 714,
        "bpm": 144,
        "bars": 16,
        "purpose": "battle",
        "mood": "tense",
        "sound": "classic",
        "channels": 4,
        "curve": [
          55,
          30,
          85,
          55
        ]
      },
      "composeMs": 1.2998599999991711,
      "renderMs": 186.7204129999991,
      "duration": 26.666666666666668,
      "scoreSHA256": "ce9370dba1846f30393161dada8e9631ee91e1c79bdfd44f3ed2df5b556d36b9",
      "wavSHA256": "060e185ded6a0f091ee3839e17d4846b2dbdd8edb4b6af1e25f72295d88c7e5f",
      "loopSeam": 7.188134532043478e-10,
      "notes": {
        "lead": 107,
        "harmony": 17,
        "bass": 120,
        "noise": 121
      },
      "sections": [
        {
          "start": 0,
          "end": 8,
          "role": "call",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 8,
          "end": 16,
          "role": "answer",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・応答"
        },
        {
          "start": 16,
          "end": 24,
          "role": "rise",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 24,
          "end": 32,
          "role": "return",
          "cycle": 0,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・回帰"
        },
        {
          "start": 32,
          "end": 40,
          "role": "call",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・呼びかけ"
        },
        {
          "start": 40,
          "end": 48,
          "role": "answer",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・応答"
        },
        {
          "start": 48,
          "end": 56,
          "role": "rise",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・解放"
        },
        {
          "start": 56,
          "end": 64,
          "role": "return",
          "cycle": 1,
          "theme": "A",
          "keyOffset": 0,
          "major": false,
          "label": "緊迫・逃走・回帰"
        }
      ],
      "transitions": [
        {
          "beat": 8,
          "kind": "bass-approach"
        },
        {
          "beat": 16,
          "kind": "space"
        },
        {
          "beat": 24,
          "kind": "backing-breath"
        },
        {
          "beat": 32,
          "kind": "bass-approach"
        },
        {
          "beat": 40,
          "kind": "space"
        },
        {
          "beat": 48,
          "kind": "noise-pickup"
        },
        {
          "beat": 56,
          "kind": "space"
        }
      ],
      "selection": {
        "applied": false,
        "reason": "scene-grammar-v29-not-battle-candidate-selection"
      }
    }
  ]
}
