diff --git a/out/figs/dyn_longrun_200.pdf b/out/figs/dyn_longrun_200.pdf index 70162d3..435a028 100644 Binary files a/out/figs/dyn_longrun_200.pdf and b/out/figs/dyn_longrun_200.pdf differ diff --git a/out/figs/dyn_longrun_200.svg b/out/figs/dyn_longrun_200.svg index e573a64..22a5c38 100644 --- a/out/figs/dyn_longrun_200.svg +++ b/out/figs/dyn_longrun_200.svg @@ -6,7 +6,7 @@ - 2026-06-05T03:20:59.088506 + 2026-06-05T03:25:37.157024 image/svg+xml @@ -40,18 +40,18 @@ z +" clip-path="url(#p123d1eb0e0)" style="fill: none; stroke-dasharray: 3.2,2.4; stroke-dashoffset: 0; stroke: #8c8c8c; stroke-width: 0.8"/> - - + @@ -87,7 +87,7 @@ z - + @@ -128,7 +128,7 @@ z - + @@ -159,7 +159,7 @@ z - + @@ -174,7 +174,7 @@ z - + @@ -436,12 +436,12 @@ z - - + @@ -465,7 +465,7 @@ z - + @@ -480,7 +480,7 @@ z - + @@ -516,7 +516,7 @@ z - + @@ -563,7 +563,7 @@ z - + @@ -619,7 +619,7 @@ z - + @@ -756,7 +756,7 @@ L 189.768429 104.991779 L 203.903836 104.991779 L 204.689136 104.120737 L 204.689136 104.120737 -" clip-path="url(#p96521c03dd)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p123d1eb0e0)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p123d1eb0e0)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#p123d1eb0e0)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p123d1eb0e0)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> - + @@ -1076,7 +1076,7 @@ z - + @@ -1090,7 +1090,7 @@ z - + @@ -1105,7 +1105,7 @@ z - + @@ -1120,7 +1120,7 @@ z - + @@ -1156,42 +1156,42 @@ z - + - + - + - + - + - + @@ -1200,13 +1200,13 @@ z +" clip-path="url(#p06e7b464f7)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p06e7b464f7)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#p06e7b464f7)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p06e7b464f7)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> + - + diff --git a/out/figs/dyn_longrun_200_hack_overlay.pdf b/out/figs/dyn_longrun_200_hack_overlay.pdf index 54bd58c..53239fe 100644 Binary files a/out/figs/dyn_longrun_200_hack_overlay.pdf and b/out/figs/dyn_longrun_200_hack_overlay.pdf differ diff --git a/out/figs/dyn_longrun_200_hack_overlay.svg b/out/figs/dyn_longrun_200_hack_overlay.svg index 53967a4..72bd552 100644 --- a/out/figs/dyn_longrun_200_hack_overlay.svg +++ b/out/figs/dyn_longrun_200_hack_overlay.svg @@ -6,7 +6,7 @@ - 2026-06-05T03:20:59.536249 + 2026-06-05T03:25:37.601250 image/svg+xml @@ -41,68 +41,68 @@ z - - + - + - + - + - + - + - + - + - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -161,7 +161,7 @@ z - + @@ -202,7 +202,7 @@ z - + @@ -238,7 +238,7 @@ z - + @@ -285,7 +285,7 @@ z - + @@ -341,7 +341,7 @@ z - + @@ -558,7 +558,7 @@ L 293.202607 110.823956 L 317.13962 110.823956 L 318.469454 109.65383 L 318.469454 109.65383 -" clip-path="url(#p6d0ea96fd5)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p4b670ec4f4)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p4b670ec4f4)" style="fill: none; stroke: #7a7a7a; stroke-width: 2; stroke-linecap: round"/> +" clip-path="url(#p4b670ec4f4)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p4b670ec4f4)" style="fill: none; stroke: #7d2f6f; stroke-width: 2; stroke-linecap: round"/> +" clip-path="url(#p4b670ec4f4)" style="fill: none; stroke: #7a7a7a; stroke-width: 1.5; stroke-linecap: square"/> - - - + + @@ -779,7 +779,7 @@ z - + @@ -792,7 +792,7 @@ z - + @@ -833,7 +833,7 @@ z - + @@ -847,7 +847,7 @@ z - + @@ -873,7 +873,7 @@ z - + @@ -888,7 +888,7 @@ z - + @@ -903,7 +903,7 @@ z - + @@ -918,7 +918,7 @@ z - + @@ -933,7 +933,7 @@ z - + @@ -1071,7 +1071,7 @@ z - + @@ -1086,7 +1086,7 @@ z - + @@ -1101,7 +1101,7 @@ z - + @@ -1116,7 +1116,7 @@ z - + @@ -1131,7 +1131,7 @@ z - + @@ -1146,7 +1146,7 @@ z - + @@ -1197,7 +1197,7 @@ L 293.202607 261.065626 L 317.13962 261.065626 L 318.469454 259.298543 L 318.469454 259.298543 -" clip-path="url(#pfaf61165ca)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7d7f3de59e)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7d7f3de59e)" style="fill: none; stroke: #7a7a7a; stroke-width: 2; stroke-linecap: round"/> +" clip-path="url(#p7d7f3de59e)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7d7f3de59e)" style="fill: none; stroke: #7d2f6f; stroke-width: 2; stroke-linecap: round"/> + - + diff --git a/out/figs/dyn_longrun_200_train_deploy.pdf b/out/figs/dyn_longrun_200_train_deploy.pdf index 01e58e4..c93994e 100644 Binary files a/out/figs/dyn_longrun_200_train_deploy.pdf and b/out/figs/dyn_longrun_200_train_deploy.pdf differ diff --git a/out/figs/dyn_longrun_200_train_deploy.png b/out/figs/dyn_longrun_200_train_deploy.png index a9e9f9e..c5cbad4 100644 Binary files a/out/figs/dyn_longrun_200_train_deploy.png and b/out/figs/dyn_longrun_200_train_deploy.png differ diff --git a/out/figs/dyn_longrun_200_train_deploy.svg b/out/figs/dyn_longrun_200_train_deploy.svg index 2e1e35e..e7098f3 100644 --- a/out/figs/dyn_longrun_200_train_deploy.svg +++ b/out/figs/dyn_longrun_200_train_deploy.svg @@ -6,7 +6,7 @@ - 2026-06-05T03:20:59.873040 + 2026-06-05T03:25:37.940817 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -82,7 +82,7 @@ z - + @@ -123,7 +123,7 @@ z - + @@ -154,7 +154,7 @@ z - + @@ -169,7 +169,7 @@ z - + @@ -431,12 +431,12 @@ z - - + @@ -460,7 +460,7 @@ z - + @@ -475,7 +475,7 @@ z - + @@ -511,7 +511,7 @@ z - + @@ -558,7 +558,7 @@ z - + @@ -614,7 +614,7 @@ z - + @@ -692,7 +692,7 @@ L 222.278179 130.877865 L 239.494268 130.877865 L 240.450717 129.597283 L 240.450717 129.597283 -" clip-path="url(#padc341ff8b)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#pdf061196e4)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#pdf061196e4)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#pdf061196e4)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #2f7d4f; stroke-width: 1.8"/> +" clip-path="url(#pdf061196e4)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> - + @@ -854,7 +854,7 @@ z - + @@ -868,7 +868,7 @@ z - + @@ -883,7 +883,7 @@ z - + @@ -898,7 +898,7 @@ z - + @@ -934,42 +934,42 @@ z - + - + - + - + - + - + @@ -978,13 +978,13 @@ z +" clip-path="url(#pec4af54013)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#pec4af54013)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#pec4af54013)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #2f7d4f; stroke-width: 1.8"/> +" clip-path="url(#pec4af54013)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> - + + - + diff --git a/out/figs/dyn_sub4.pdf b/out/figs/dyn_sub4.pdf index 243c32f..55253c4 100644 Binary files a/out/figs/dyn_sub4.pdf and b/out/figs/dyn_sub4.pdf differ diff --git a/out/figs/dyn_sub4.svg b/out/figs/dyn_sub4.svg index f0cab0c..6d5d48d 100644 --- a/out/figs/dyn_sub4.svg +++ b/out/figs/dyn_sub4.svg @@ -6,7 +6,7 @@ - 2026-06-05T03:20:50.811185 + 2026-06-05T03:25:29.951339 image/svg+xml @@ -40,18 +40,18 @@ z +" clip-path="url(#p8ab2e37765)" style="fill: none; stroke-dasharray: 3.2,2.4; stroke-dashoffset: 0; stroke: #8c8c8c; stroke-width: 0.8"/> - - + @@ -87,7 +87,7 @@ z - + @@ -117,7 +117,7 @@ z - + @@ -157,7 +157,7 @@ z - + @@ -205,7 +205,7 @@ z - + @@ -240,7 +240,7 @@ z - + @@ -281,7 +281,7 @@ z - + @@ -548,12 +548,12 @@ z - - + @@ -577,7 +577,7 @@ z - + @@ -592,7 +592,7 @@ z - + @@ -607,7 +607,7 @@ z - + @@ -622,7 +622,7 @@ z - + @@ -678,7 +678,7 @@ z - + @@ -855,7 +855,7 @@ L 197.158675 98.861038 L 199.814451 98.861038 L 202.470228 98.861038 L 205.126005 100.398536 -" clip-path="url(#paa4382c8ab)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p8ab2e37765)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p8ab2e37765)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p8ab2e37765)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p8ab2e37765)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#p8ab2e37765)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p8ab2e37765)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p8ab2e37765)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p8ab2e37765)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#p0d0a4d9343)" style="fill: none; stroke-dasharray: 3.2,2.4; stroke-dashoffset: 0; stroke: #8c8c8c; stroke-width: 0.8"/> - + @@ -1553,7 +1553,7 @@ L 331.821041 30.116625 - + @@ -1567,7 +1567,7 @@ L 331.821041 30.116625 - + @@ -1581,7 +1581,7 @@ L 331.821041 30.116625 - + @@ -1595,7 +1595,7 @@ L 331.821041 30.116625 - + @@ -1609,7 +1609,7 @@ L 331.821041 30.116625 - + @@ -1623,7 +1623,7 @@ L 331.821041 30.116625 - + @@ -1658,42 +1658,42 @@ L 331.821041 30.116625 - + - + - + - + - + - + @@ -1759,7 +1759,7 @@ L 400.871241 139.604548 L 403.527018 139.604548 L 406.182795 139.604548 L 408.838572 139.604548 -" clip-path="url(#p723fcffbcb)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p0d0a4d9343)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p0d0a4d9343)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p0d0a4d9343)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p0d0a4d9343)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#p0d0a4d9343)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p0d0a4d9343)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p0d0a4d9343)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p0d0a4d9343)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> + - + diff --git a/out/figs/dyn_sub4_hack_overlay.pdf b/out/figs/dyn_sub4_hack_overlay.pdf index 72b99a6..f72c314 100644 Binary files a/out/figs/dyn_sub4_hack_overlay.pdf and b/out/figs/dyn_sub4_hack_overlay.pdf differ diff --git a/out/figs/dyn_sub4_hack_overlay.svg b/out/figs/dyn_sub4_hack_overlay.svg index 1fdb281..bedf981 100644 --- a/out/figs/dyn_sub4_hack_overlay.svg +++ b/out/figs/dyn_sub4_hack_overlay.svg @@ -6,7 +6,7 @@ - 2026-06-05T03:20:51.255395 + 2026-06-05T03:25:30.395321 image/svg+xml @@ -41,54 +41,54 @@ z - - + - + - + - + - + - + - + @@ -97,12 +97,12 @@ L 0 3.5 - - + @@ -147,7 +147,7 @@ z - + @@ -188,7 +188,7 @@ z - + @@ -224,7 +224,7 @@ z - + @@ -271,7 +271,7 @@ z - + @@ -327,7 +327,7 @@ z - + @@ -584,7 +584,7 @@ L 302.156358 102.588139 L 306.593266 102.588139 L 311.030175 102.588139 L 315.467083 104.653559 -" clip-path="url(#p56fd678a4d)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7a7a7a; stroke-width: 2; stroke-linecap: round"/> +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7d2f6f; stroke-width: 2; stroke-linecap: round"/> +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7a7a7a; stroke-width: 1.5; stroke-linecap: square"/> - - - + + +" clip-path="url(#p0131b9c9d7)" style="fill: none; stroke: #7d2f6f; stroke-width: 1.5; stroke-linecap: square"/> - - - + + @@ -1231,7 +1231,7 @@ z - + @@ -1244,7 +1244,7 @@ z - + @@ -1258,7 +1258,7 @@ z - + @@ -1272,7 +1272,7 @@ z - + @@ -1320,7 +1320,7 @@ z - + @@ -1334,7 +1334,7 @@ z - + @@ -1375,7 +1375,7 @@ z - + @@ -1512,7 +1512,7 @@ z - + @@ -1527,7 +1527,7 @@ z - + @@ -1542,7 +1542,7 @@ z - + @@ -1557,7 +1557,7 @@ z - + @@ -1572,7 +1572,7 @@ z - + @@ -1587,7 +1587,7 @@ z - + @@ -1676,7 +1676,7 @@ L 302.156358 263.423551 L 306.593266 263.423551 L 311.030175 263.423551 L 315.467083 263.915093 -" clip-path="url(#p4d77beb14b)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7057fe009d)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7057fe009d)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7057fe009d)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7057fe009d)" style="fill: none; stroke: #7a7a7a; stroke-width: 2; stroke-linecap: round"/> +" clip-path="url(#p7057fe009d)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7057fe009d)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7057fe009d)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p7057fe009d)" style="fill: none; stroke: #7d2f6f; stroke-width: 2; stroke-linecap: round"/> + - + diff --git a/out/figs/dyn_sub4_train_deploy.pdf b/out/figs/dyn_sub4_train_deploy.pdf index 74f4bf3..eecf5e4 100644 Binary files a/out/figs/dyn_sub4_train_deploy.pdf and b/out/figs/dyn_sub4_train_deploy.pdf differ diff --git a/out/figs/dyn_sub4_train_deploy.png b/out/figs/dyn_sub4_train_deploy.png index 2df818b..76a7a2b 100644 Binary files a/out/figs/dyn_sub4_train_deploy.png and b/out/figs/dyn_sub4_train_deploy.png differ diff --git a/out/figs/dyn_sub4_train_deploy.svg b/out/figs/dyn_sub4_train_deploy.svg index d349ef3..689b373 100644 --- a/out/figs/dyn_sub4_train_deploy.svg +++ b/out/figs/dyn_sub4_train_deploy.svg @@ -6,7 +6,7 @@ - 2026-06-05T03:20:51.590529 + 2026-06-05T03:25:30.730474 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -82,7 +82,7 @@ z - + @@ -112,7 +112,7 @@ z - + @@ -152,7 +152,7 @@ z - + @@ -200,7 +200,7 @@ z - + @@ -235,7 +235,7 @@ z - + @@ -276,7 +276,7 @@ z - + @@ -543,12 +543,12 @@ z - - + @@ -572,7 +572,7 @@ z - + @@ -587,7 +587,7 @@ z - + @@ -602,7 +602,7 @@ z - + @@ -617,7 +617,7 @@ z - + @@ -673,7 +673,7 @@ z - + @@ -791,7 +791,7 @@ L 231.275263 122.768725 L 234.509778 122.768725 L 237.744292 122.768725 L 240.978807 123.386359 -" clip-path="url(#p82d30c705d)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#p6d868a6acc)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#p6d868a6acc)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#p6d868a6acc)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #2f7d4f; stroke-width: 1.8"/> +" clip-path="url(#p6d868a6acc)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> - + @@ -1069,7 +1069,7 @@ z - + @@ -1083,7 +1083,7 @@ z - + @@ -1097,7 +1097,7 @@ z - + @@ -1111,7 +1111,7 @@ z - + @@ -1125,7 +1125,7 @@ z - + @@ -1139,7 +1139,7 @@ z - + @@ -1174,42 +1174,42 @@ z - + - + - + - + - + - + @@ -1275,7 +1275,7 @@ L 455.495263 179.430722 L 458.729778 179.430722 L 461.964292 179.430722 L 465.198807 179.314432 -" clip-path="url(#p66f5352524)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#pc2f7daaff6)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#pc2f7daaff6)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#pc2f7daaff6)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #2f7d4f; stroke-width: 1.8"/> +" clip-path="url(#pc2f7daaff6)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> - + + - + diff --git a/out/figs/train_vs_deploy_60.pdf b/out/figs/train_vs_deploy_60.pdf index 85d1303..50d06bd 100644 Binary files a/out/figs/train_vs_deploy_60.pdf and b/out/figs/train_vs_deploy_60.pdf differ diff --git a/out/figs/train_vs_deploy_60.svg b/out/figs/train_vs_deploy_60.svg index 580fd43..ab1b98e 100644 --- a/out/figs/train_vs_deploy_60.svg +++ b/out/figs/train_vs_deploy_60.svg @@ -6,7 +6,7 @@ - 2026-06-05T03:21:07.172270 + 2026-06-05T03:25:20.898497 image/svg+xml @@ -40,18 +40,18 @@ z +" clip-path="url(#p4569e67037)" style="fill: none; stroke-dasharray: 3.2,2.4; stroke-dashoffset: 0; stroke: #8c8c8c; stroke-width: 0.8"/> - - + @@ -87,7 +87,7 @@ z - + @@ -117,7 +117,7 @@ z - + @@ -157,7 +157,7 @@ z - + @@ -205,7 +205,7 @@ z - + @@ -240,7 +240,7 @@ z - + @@ -281,7 +281,7 @@ z - + @@ -548,12 +548,12 @@ z - - + @@ -577,7 +577,7 @@ z - + @@ -592,7 +592,7 @@ z - + @@ -607,7 +607,7 @@ z - + @@ -622,7 +622,7 @@ z - + @@ -678,7 +678,7 @@ z - + @@ -855,7 +855,7 @@ L 197.158675 98.861038 L 199.814451 98.861038 L 202.470228 98.861038 L 205.126005 100.398536 -" clip-path="url(#p77410db5bf)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p4569e67037)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p4569e67037)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#p4569e67037)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#p4569e67037)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> - + @@ -1295,7 +1295,7 @@ z - + @@ -1309,7 +1309,7 @@ z - + @@ -1323,7 +1323,7 @@ z - + @@ -1337,7 +1337,7 @@ z - + @@ -1351,7 +1351,7 @@ z - + @@ -1365,7 +1365,7 @@ z - + @@ -1400,42 +1400,42 @@ z - + - + - + - + - + - + @@ -1501,7 +1501,7 @@ L 400.871241 139.604548 L 403.527018 139.604548 L 406.182795 139.604548 L 408.838572 139.604548 -" clip-path="url(#p92781bb5db)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#pbe11fee266)" style="fill: none; stroke: #c1432b; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#pbe11fee266)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#pbe11fee266)" style="fill: none; stroke: #2f7d4f; stroke-opacity: 0.35; stroke-width: 0.7; stroke-linecap: round"/> +" clip-path="url(#pbe11fee266)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> + - + diff --git a/out/figs/train_vs_deploy_60_hack_overlay.pdf b/out/figs/train_vs_deploy_60_hack_overlay.pdf index 49089f1..5a06024 100644 Binary files a/out/figs/train_vs_deploy_60_hack_overlay.pdf and b/out/figs/train_vs_deploy_60_hack_overlay.pdf differ diff --git a/out/figs/train_vs_deploy_60_hack_overlay.svg b/out/figs/train_vs_deploy_60_hack_overlay.svg index 81a11a5..9439b7a 100644 --- a/out/figs/train_vs_deploy_60_hack_overlay.svg +++ b/out/figs/train_vs_deploy_60_hack_overlay.svg @@ -6,7 +6,7 @@ - 2026-06-05T03:21:07.610707 + 2026-06-05T03:25:21.345304 image/svg+xml @@ -41,54 +41,54 @@ z - - + - + - + - + - + - + - + @@ -97,12 +97,12 @@ L 0 3.5 - - + @@ -147,7 +147,7 @@ z - + @@ -188,7 +188,7 @@ z - + @@ -224,7 +224,7 @@ z - + @@ -271,7 +271,7 @@ z - + @@ -327,7 +327,7 @@ z - + @@ -584,7 +584,7 @@ L 302.156358 102.588139 L 306.593266 102.588139 L 311.030175 102.588139 L 315.467083 104.653559 -" clip-path="url(#p2e09a7c0d6)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#pb6320a07d1)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#pb6320a07d1)" style="fill: none; stroke: #7a7a7a; stroke-width: 2; stroke-linecap: round"/> +" clip-path="url(#pb6320a07d1)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#pb6320a07d1)" style="fill: none; stroke: #7d2f6f; stroke-width: 2; stroke-linecap: round"/> +" clip-path="url(#pb6320a07d1)" style="fill: none; stroke: #7a7a7a; stroke-width: 1.5; stroke-linecap: square"/> - - - + + @@ -959,7 +959,7 @@ z - + @@ -972,7 +972,7 @@ z - + @@ -986,7 +986,7 @@ z - + @@ -1000,7 +1000,7 @@ z - + @@ -1048,7 +1048,7 @@ z - + @@ -1062,7 +1062,7 @@ z - + @@ -1103,7 +1103,7 @@ z - + @@ -1240,7 +1240,7 @@ z - + @@ -1255,7 +1255,7 @@ z - + @@ -1270,7 +1270,7 @@ z - + @@ -1285,7 +1285,7 @@ z - + @@ -1300,7 +1300,7 @@ z - + @@ -1315,7 +1315,7 @@ z - + @@ -1404,7 +1404,7 @@ L 302.156358 263.423551 L 306.593266 263.423551 L 311.030175 263.423551 L 315.467083 263.915093 -" clip-path="url(#pd946ab4218)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p6e984d1d55)" style="fill: none; stroke: #7a7a7a; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p6e984d1d55)" style="fill: none; stroke: #7a7a7a; stroke-width: 2; stroke-linecap: round"/> +" clip-path="url(#p6e984d1d55)" style="fill: none; stroke: #7d2f6f; stroke-opacity: 0.25; stroke-width: 0.6; stroke-linecap: round"/> +" clip-path="url(#p6e984d1d55)" style="fill: none; stroke: #7d2f6f; stroke-width: 2; stroke-linecap: round"/> + - + diff --git a/out/figs/train_vs_deploy_60_train_deploy.pdf b/out/figs/train_vs_deploy_60_train_deploy.pdf index c7dd626..2d5309b 100644 Binary files a/out/figs/train_vs_deploy_60_train_deploy.pdf and b/out/figs/train_vs_deploy_60_train_deploy.pdf differ diff --git a/out/figs/train_vs_deploy_60_train_deploy.png b/out/figs/train_vs_deploy_60_train_deploy.png index dc331c2..2983c32 100644 Binary files a/out/figs/train_vs_deploy_60_train_deploy.png and b/out/figs/train_vs_deploy_60_train_deploy.png differ diff --git a/out/figs/train_vs_deploy_60_train_deploy.svg b/out/figs/train_vs_deploy_60_train_deploy.svg index 628e83f..9df59d5 100644 --- a/out/figs/train_vs_deploy_60_train_deploy.svg +++ b/out/figs/train_vs_deploy_60_train_deploy.svg @@ -6,7 +6,7 @@ - 2026-06-05T03:21:07.958495 + 2026-06-05T03:25:21.697913 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -82,7 +82,7 @@ z - + @@ -112,7 +112,7 @@ z - + @@ -152,7 +152,7 @@ z - + @@ -200,7 +200,7 @@ z - + @@ -235,7 +235,7 @@ z - + @@ -276,7 +276,7 @@ z - + @@ -543,12 +543,12 @@ z - - + @@ -572,7 +572,7 @@ z - + @@ -587,7 +587,7 @@ z - + @@ -602,7 +602,7 @@ z - + @@ -617,7 +617,7 @@ z - + @@ -673,7 +673,7 @@ z - + @@ -791,7 +791,7 @@ L 231.275263 121.864614 L 234.509778 121.864614 L 237.744292 121.864614 L 240.978807 124.125003 -" clip-path="url(#p3629079829)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#p29c5205ca7)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#p29c5205ca7)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#p29c5205ca7)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #2f7d4f; stroke-width: 1.8"/> +" clip-path="url(#p29c5205ca7)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> - + @@ -1069,7 +1069,7 @@ z - + @@ -1083,7 +1083,7 @@ z - + @@ -1097,7 +1097,7 @@ z - + @@ -1111,7 +1111,7 @@ z - + @@ -1125,7 +1125,7 @@ z - + @@ -1139,7 +1139,7 @@ z - + @@ -1174,42 +1174,42 @@ z - + - + - + - + - + - + @@ -1275,7 +1275,7 @@ L 455.495263 147.982413 L 458.729778 147.982413 L 461.964292 147.982413 L 465.198807 145.8293 -" clip-path="url(#p72a118a30e)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#p9cc3748215)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #c1432b; stroke-width: 1.8"/> +" clip-path="url(#p9cc3748215)" style="fill: none; stroke: #c1432b; stroke-width: 1.8; stroke-linecap: round"/> +" clip-path="url(#p9cc3748215)" style="fill: none; stroke-dasharray: 7.2,3.6; stroke-dashoffset: 0; stroke: #2f7d4f; stroke-width: 1.8"/> +" clip-path="url(#p9cc3748215)" style="fill: none; stroke: #2f7d4f; stroke-width: 1.8; stroke-linecap: round"/> - + + - + diff --git a/scripts/plot_dynamics.py b/scripts/plot_dynamics.py index f10893f..2b5448e 100644 --- a/scripts/plot_dynamics.py +++ b/scripts/plot_dynamics.py @@ -455,10 +455,11 @@ def plot_train_vs_deploy(runs: list[dict], out: Path) -> None: ax.plot(xm, ym, color=color, ls=ls, lw=1.8, solid_capstyle="round") if key == "hk_dep" and np.nanmax(ym) < 0.02: deploy_hack_zero = True - if deploy_hack_zero: # the route headline: solid-red pinned at 0 - ax.annotate(r"deploy hack $\equiv 0$", (0.04, 0.0), - xycoords=("axes fraction", "data"), color=red, fontsize=8, - va="bottom", xytext=(0, 3), textcoords="offset points") + if deploy_hack_zero: # the route headline: solid-red pinned at 0. + # Lift the label into the empty band above the flat line (collision test: + # at y=0 the solid-red deploy line runs straight through the text). + ax.annotate(r"deploy hack $\equiv 0$", (0.04, 0.12), + xycoords="axes fraction", color=red, fontsize=8, va="bottom") # teacher-off curriculum: shade the teacher-ON region so "seeded here, on-policy # after" stays visible in the C4 bootstrap variant (jobs 93/94). toffs = {r.get("teacher_off") for r in by_arm[arm] if r.get("teacher_off")}