diff --git a/ci/release/changelogs/next.md b/ci/release/changelogs/next.md
index 392037b156..9aa0b69812 100644
--- a/ci/release/changelogs/next.md
+++ b/ci/release/changelogs/next.md
@@ -1,4 +1,5 @@
#### Features 🚀
+- Ability to fade background shape on multiple style [#2509](https://github.com/terrastruct/d2/pull/2509)
- `cross` arrowhead shape is available [#2190](https://github.com/terrastruct/d2/pull/2190)
- `style.underline` support for class fields and methods [#2544](https://github.com/terrastruct/d2/pull/2544)
diff --git a/d2ast/keywords.go b/d2ast/keywords.go
index 65f67b7754..ad3d68b8a3 100644
--- a/d2ast/keywords.go
+++ b/d2ast/keywords.go
@@ -41,6 +41,7 @@ var CompositeReservedKeywords = map[string]struct{}{
"constraint": {},
"label": {},
"icon": {},
+ "multiple": {},
}
// StyleKeywords are reserved keywords which cannot exist outside of the "style" keyword
diff --git a/d2compiler/compile.go b/d2compiler/compile.go
index 21b62093a5..512476b335 100644
--- a/d2compiler/compile.go
+++ b/d2compiler/compile.go
@@ -756,6 +756,35 @@ func (c *compiler) compileStyleField(styles *d2graph.Style, f *d2ir.Field) {
c.errorf(f.LastRef().AST(), `invalid style keyword: "%s"`, f.Name.ScalarString())
return
}
+
+ if f.Map() != nil {
+ for _, ff := range f.Map().Fields {
+ if ff.Name.ScalarString() == "opacity" && ff.Name.IsUnquoted() {
+ if ff.Primary() == nil {
+ c.errorf(ff.LastPrimaryKey(), `invalid "opacity" field`)
+ } else {
+ scalar := ff.Primary().Value
+ switch f.Name.ScalarString() {
+ case "multiple":
+ styles.MultipleOpacity = &d2graph.Scalar{MapKey: f.LastPrimaryKey()}
+ err := styles.Apply(f.Name.ScalarString()+ff.Name.ScalarString(), scalar.ScalarString())
+ if err != nil {
+ c.errorf(scalar, err.Error())
+ return
+ }
+ default:
+ c.errorf(f.Name, `invalid "opacity" style for "%s"`, f.Name.ScalarString())
+ return
+ }
+ }
+ } else {
+ if ff.LastPrimaryKey() != nil {
+ c.errorf(ff.LastPrimaryKey(), `unexpected field %s`, ff.Name.ScalarString())
+ }
+ }
+ }
+ }
+
if f.Primary() == nil {
return
}
diff --git a/d2exporter/export.go b/d2exporter/export.go
index e0bebc1235..a2b31e4101 100644
--- a/d2exporter/export.go
+++ b/d2exporter/export.go
@@ -172,6 +172,9 @@ func applyStyles(shape *d2target.Shape, obj *d2graph.Object) {
if obj.Style.Multiple != nil {
shape.Multiple, _ = strconv.ParseBool(obj.Style.Multiple.Value)
}
+ if obj.Style.MultipleOpacity != nil {
+ shape.MultipleOpacity, _ = strconv.ParseFloat(obj.Style.MultipleOpacity.Value, 64)
+ }
if obj.Style.BorderRadius != nil {
shape.BorderRadius, _ = strconv.Atoi(obj.Style.BorderRadius.Value)
}
diff --git a/d2graph/d2graph.go b/d2graph/d2graph.go
index 5715d43f14..274d004dbe 100644
--- a/d2graph/d2graph.go
+++ b/d2graph/d2graph.go
@@ -281,26 +281,27 @@ func (r Reference) InEdge() bool {
}
type Style struct {
- Opacity *Scalar `json:"opacity,omitempty"`
- Stroke *Scalar `json:"stroke,omitempty"`
- Fill *Scalar `json:"fill,omitempty"`
- FillPattern *Scalar `json:"fillPattern,omitempty"`
- StrokeWidth *Scalar `json:"strokeWidth,omitempty"`
- StrokeDash *Scalar `json:"strokeDash,omitempty"`
- BorderRadius *Scalar `json:"borderRadius,omitempty"`
- Shadow *Scalar `json:"shadow,omitempty"`
- ThreeDee *Scalar `json:"3d,omitempty"`
- Multiple *Scalar `json:"multiple,omitempty"`
- Font *Scalar `json:"font,omitempty"`
- FontSize *Scalar `json:"fontSize,omitempty"`
- FontColor *Scalar `json:"fontColor,omitempty"`
- Animated *Scalar `json:"animated,omitempty"`
- Bold *Scalar `json:"bold,omitempty"`
- Italic *Scalar `json:"italic,omitempty"`
- Underline *Scalar `json:"underline,omitempty"`
- Filled *Scalar `json:"filled,omitempty"`
- DoubleBorder *Scalar `json:"doubleBorder,omitempty"`
- TextTransform *Scalar `json:"textTransform,omitempty"`
+ Opacity *Scalar `json:"opacity,omitempty"`
+ Stroke *Scalar `json:"stroke,omitempty"`
+ Fill *Scalar `json:"fill,omitempty"`
+ FillPattern *Scalar `json:"fillPattern,omitempty"`
+ StrokeWidth *Scalar `json:"strokeWidth,omitempty"`
+ StrokeDash *Scalar `json:"strokeDash,omitempty"`
+ BorderRadius *Scalar `json:"borderRadius,omitempty"`
+ Shadow *Scalar `json:"shadow,omitempty"`
+ ThreeDee *Scalar `json:"3d,omitempty"`
+ Multiple *Scalar `json:"multiple,omitempty"`
+ MultipleOpacity *Scalar `json:"multipleOpacity,omitempty"`
+ Font *Scalar `json:"font,omitempty"`
+ FontSize *Scalar `json:"fontSize,omitempty"`
+ FontColor *Scalar `json:"fontColor,omitempty"`
+ Animated *Scalar `json:"animated,omitempty"`
+ Bold *Scalar `json:"bold,omitempty"`
+ Italic *Scalar `json:"italic,omitempty"`
+ Underline *Scalar `json:"underline,omitempty"`
+ Filled *Scalar `json:"filled,omitempty"`
+ DoubleBorder *Scalar `json:"doubleBorder,omitempty"`
+ TextTransform *Scalar `json:"textTransform,omitempty"`
}
// NoneTextTransform will return a boolean if the text should not have any
@@ -486,6 +487,15 @@ func (s *Style) Apply(key, value string) error {
return fmt.Errorf(`expected "text-transform" to be one of (%s)`, strings.Join(d2ast.TextTransforms, ", "))
}
s.TextTransform.Value = value
+ case "multipleopacity":
+ if s.MultipleOpacity == nil {
+ break
+ }
+ f, err := strconv.ParseFloat(value, 64)
+ if err != nil || (f < 0 || f > 1) {
+ return errors.New(`expected "opacity" to be a number between 0.0 and 1.0`)
+ }
+ s.MultipleOpacity.Value = value
default:
return fmt.Errorf("unknown style key: %s", key)
}
diff --git a/d2renderers/d2sketch/testdata/dots-multiple/sketch.exp.svg b/d2renderers/d2sketch/testdata/dots-multiple/sketch.exp.svg
index 53b9d18c16..f3d98dbb45 100644
--- a/d2renderers/d2sketch/testdata/dots-multiple/sketch.exp.svg
+++ b/d2renderers/d2sketch/testdata/dots-multiple/sketch.exp.svg
@@ -134,7 +134,7 @@
-rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud
+rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud
diff --git a/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg b/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg
index ad7efbacff..c941dfc790 100644
--- a/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg
+++ b/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg
@@ -170,7 +170,7 @@
-NETWORKD2 Parser+readerio.RuneReader+readerPosd2ast.Position-lookahead[]rune#peekn(n int)(s string, eof bool)+peek()(r rune, eof bool)+rewind()void+commit()voidCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND
+NETWORKD2 Parser+readerio.RuneReader+readerPosd2ast.Position-lookahead[]rune#peekn(n int)(s string, eof bool)+peek()(r rune, eof bool)+rewind()void+commit()voidCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND
diff --git a/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg b/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg
index 250acb653d..f660bd18b3 100644
--- a/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg
+++ b/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg
@@ -1216,7 +1216,7 @@
-NETWORKCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND
+NETWORKCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND
diff --git a/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg b/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg
index ad191f5627..d03b093cba 100644
--- a/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg
+++ b/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg
@@ -148,7 +148,7 @@
-NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SEND SEND SEND PHONE LOGS MAKE CALL ACCESS DISPLAY PERSIST
+NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SEND SEND SEND PHONE LOGS MAKE CALL ACCESS DISPLAY PERSIST
diff --git a/d2renderers/d2sketch/testdata/twitter/sketch.exp.svg b/d2renderers/d2sketch/testdata/twitter/sketch.exp.svg
index b39a90d5dc..ba81b7b513 100644
--- a/d2renderers/d2sketch/testdata/twitter/sketch.exp.svg
+++ b/d2renderers/d2sketch/testdata/twitter/sketch.exp.svg
@@ -862,7 +862,7 @@
-People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etcTimeline mixer
+
People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etcTimeline mixer
- Inject ads, who-to-follow, onboarding
- Conversation module
diff --git a/d2renderers/d2sketch/testdata/twitter_dark/sketch.exp.svg b/d2renderers/d2sketch/testdata/twitter_dark/sketch.exp.svg
index f89cb16ce1..fdc390b994 100644
--- a/d2renderers/d2sketch/testdata/twitter_dark/sketch.exp.svg
+++ b/d2renderers/d2sketch/testdata/twitter_dark/sketch.exp.svg
@@ -862,7 +862,7 @@
-People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etcTimeline mixer
+
People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etcTimeline mixer
- Inject ads, who-to-follow, onboarding
- Conversation module
diff --git a/d2renderers/d2svg/d2svg.go b/d2renderers/d2svg/d2svg.go
index 8798074e7e..e190721ab4 100644
--- a/d2renderers/d2svg/d2svg.go
+++ b/d2renderers/d2svg/d2svg.go
@@ -1466,6 +1466,11 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape
opacityStyle = fmt.Sprintf(" style='opacity:%f'", targetShape.Opacity)
}
+ multipleOpacityStyle := ""
+ if targetShape.MultipleOpacity != 1.0 {
+ multipleOpacityStyle = fmt.Sprintf(" opacity:%f", targetShape.MultipleOpacity)
+ }
+
// this clipPath must be defined outside `g` element
if targetShape.BorderRadius != 0 && (targetShape.Type == d2target.ShapeClass || targetShape.Type == d2target.ShapeSQLTable) {
fmt.Fprint(writer, clipPathForBorderRadius(diagramHash, targetShape))
@@ -1553,7 +1558,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape
case d2target.ShapeOval:
if targetShape.DoubleBorder {
if targetShape.Multiple {
- fmt.Fprint(writer, renderDoubleOval(multipleTL, width, height, fill, "", stroke, style, inlineTheme))
+ fmt.Fprint(writer, renderDoubleOval(multipleTL, width, height, fill, "", stroke, style+multipleOpacityStyle, inlineTheme))
}
if jsRunner != nil {
out, err := d2sketch.DoubleOval(jsRunner, targetShape)
@@ -1566,7 +1571,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape
}
} else {
if targetShape.Multiple {
- fmt.Fprint(writer, renderOval(multipleTL, width, height, fill, "", stroke, style, inlineTheme))
+ fmt.Fprint(writer, renderOval(multipleTL, width, height, fill, "", stroke, style+multipleOpacityStyle, inlineTheme))
}
if jsRunner != nil {
out, err := d2sketch.Oval(jsRunner, targetShape)
@@ -1612,7 +1617,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape
el.Height = float64(targetShape.Height)
el.Fill = fill
el.Stroke = stroke
- el.Style = style
+ el.Style = style + multipleOpacityStyle
el.Rx = borderRadius
fmt.Fprint(writer, el.Render())
}
@@ -1645,7 +1650,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape
el.Fill = fill
el.FillPattern = targetShape.FillPattern
el.Stroke = stroke
- el.Style = style
+ el.Style = style + multipleOpacityStyle
el.Rx = borderRadius
fmt.Fprint(writer, el.Render())
@@ -1701,7 +1706,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape
el := d2themes.NewThemableElement("path", inlineTheme)
el.Fill = fill
el.Stroke = stroke
- el.Style = style
+ el.Style = style + multipleOpacityStyle
for _, pathData := range multiplePathData {
el.D = pathData
fmt.Fprint(writer, el.Render())
@@ -1733,7 +1738,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape
el := d2themes.NewThemableElement("path", inlineTheme)
el.Fill = fill
el.Stroke = stroke
- el.Style = style
+ el.Style = style + multipleOpacityStyle
for _, pathData := range multiplePathData {
el.D = pathData
fmt.Fprint(writer, el.Render())
diff --git a/d2renderers/d2svg/dark_theme/testdata/twitter/dark_theme.exp.svg b/d2renderers/d2svg/dark_theme/testdata/twitter/dark_theme.exp.svg
index 904003c5e5..f674a68599 100644
--- a/d2renderers/d2svg/dark_theme/testdata/twitter/dark_theme.exp.svg
+++ b/d2renderers/d2svg/dark_theme/testdata/twitter/dark_theme.exp.svg
@@ -842,7 +842,7 @@
.d2-1329315803 .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em;
}
-People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etcTimeline mixer
+
People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etcTimeline mixer
- Inject ads, who-to-follow, onboarding
- Conversation module
diff --git a/d2target/d2target.go b/d2target/d2target.go
index 7f6dc9ea2f..0688dda767 100644
--- a/d2target/d2target.go
+++ b/d2target/d2target.go
@@ -497,11 +497,12 @@ type Shape struct {
FillPattern string `json:"fillPattern,omitempty"`
Stroke string `json:"stroke"`
- Animated bool `json:"animated"`
- Shadow bool `json:"shadow"`
- ThreeDee bool `json:"3d"`
- Multiple bool `json:"multiple"`
- DoubleBorder bool `json:"double-border"`
+ Animated bool `json:"animated"`
+ Shadow bool `json:"shadow"`
+ ThreeDee bool `json:"3d"`
+ Multiple bool `json:"multiple"`
+ MultipleOpacity float64 `json:"multipleOpacity,omitempty"`
+ DoubleBorder bool `json:"double-border"`
Tooltip string `json:"tooltip"`
Link string `json:"link"`
diff --git a/e2etests-cli/testdata/TestCLI_E2E/theme-override.exp.svg b/e2etests-cli/testdata/TestCLI_E2E/theme-override.exp.svg
index fe07dce21f..5cabfaeeae 100644
--- a/e2etests-cli/testdata/TestCLI_E2E/theme-override.exp.svg
+++ b/e2etests-cli/testdata/TestCLI_E2E/theme-override.exp.svg
@@ -103,7 +103,7 @@
.d2-586632521 .color-AA4{color:#42A5F5;}
.d2-586632521 .color-AA5{color:#90CAF9;}
.d2-586632521 .color-AB4{color:#F44336;}
- .d2-586632521 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access
+ .d2-586632521 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access
diff --git a/e2etests/testdata/patterns/multiple/dagre/sketch.exp.svg b/e2etests/testdata/patterns/multiple/dagre/sketch.exp.svg
index 02ff92a149..43b6a2ed2d 100644
--- a/e2etests/testdata/patterns/multiple/dagre/sketch.exp.svg
+++ b/e2etests/testdata/patterns/multiple/dagre/sketch.exp.svg
@@ -122,7 +122,7 @@
-rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud
+rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud
diff --git a/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg b/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg
index ec05293594..af075cd6db 100644
--- a/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg
+++ b/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg
@@ -145,7 +145,7 @@
-NETWORKcostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCELL TOWERSATELLITESTRANSMITTER SENDSENDSEND
+NETWORKcostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCELL TOWERSATELLITESTRANSMITTER SENDSENDSEND
diff --git a/e2etests/testdata/patterns/real/dagre/sketch.exp.svg b/e2etests/testdata/patterns/real/dagre/sketch.exp.svg
index 6d4c7c0033..4c173f6c76 100644
--- a/e2etests/testdata/patterns/real/dagre/sketch.exp.svg
+++ b/e2etests/testdata/patterns/real/dagre/sketch.exp.svg
@@ -136,7 +136,7 @@
-NETWORKCELL TOWERSATELLITESTRANSMITTER SENDSENDSEND
+NETWORKCELL TOWERSATELLITESTRANSMITTER SENDSENDSEND
diff --git a/e2etests/testdata/stable/all_shapes_multiple/dagre/sketch.exp.svg b/e2etests/testdata/stable/all_shapes_multiple/dagre/sketch.exp.svg
index b2af63aa22..1108ff5564 100644
--- a/e2etests/testdata/stable/all_shapes_multiple/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/all_shapes_multiple/dagre/sketch.exp.svg
@@ -89,7 +89,7 @@
.d2-2407724796 .color-AA4{color:#EDF0FD;}
.d2-2407724796 .color-AA5{color:#F7F8FE;}
.d2-2407724796 .color-AB4{color:#EDF0FD;}
- .d2-2407724796 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2407724796);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2407724796);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2407724796);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2407724796);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud
+ .d2-2407724796 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2407724796);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2407724796);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2407724796);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2407724796);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud
diff --git a/e2etests/testdata/stable/all_shapes_multiple/elk/sketch.exp.svg b/e2etests/testdata/stable/all_shapes_multiple/elk/sketch.exp.svg
index 11c713c2f1..56285325d1 100644
--- a/e2etests/testdata/stable/all_shapes_multiple/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/all_shapes_multiple/elk/sketch.exp.svg
@@ -89,7 +89,7 @@
.d2-637431275 .color-AA4{color:#EDF0FD;}
.d2-637431275 .color-AA5{color:#F7F8FE;}
.d2-637431275 .color-AB4{color:#EDF0FD;}
- .d2-637431275 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-637431275);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-637431275);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-637431275);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-637431275);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud
+ .d2-637431275 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-637431275);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-637431275);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-637431275);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-637431275);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud
diff --git a/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg b/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg
index 99bb6bfbff..2e365feb98 100644
--- a/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg
@@ -89,7 +89,7 @@
.d2-448308156 .color-AA4{color:#EDF0FD;}
.d2-448308156 .color-AA5{color:#F7F8FE;}
.d2-448308156 .color-AB4{color:#EDF0FD;}
- .d2-448308156 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-448308156);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-448308156);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-448308156);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-448308156);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double
+ .d2-448308156 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-448308156);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-448308156);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-448308156);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-448308156);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double
three-dee
diff --git a/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg b/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg
index 7f1545a0cd..42f9babe2b 100644
--- a/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg
@@ -89,7 +89,7 @@
.d2-2886130221 .color-AA4{color:#EDF0FD;}
.d2-2886130221 .color-AA5{color:#F7F8FE;}
.d2-2886130221 .color-AB4{color:#EDF0FD;}
- .d2-2886130221 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2886130221);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2886130221);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2886130221);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2886130221);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double
+ .d2-2886130221 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2886130221);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2886130221);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2886130221);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2886130221);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double
three-dee
diff --git a/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg b/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg
index e2bfb33c2d..ce743dd081 100644
--- a/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg
@@ -89,7 +89,7 @@
.d2-1236460180 .color-AA4{color:#EDF0FD;}
.d2-1236460180 .color-AA5{color:#F7F8FE;}
.d2-1236460180 .color-AB4{color:#EDF0FD;}
- .d2-1236460180 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1236460180);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1236460180);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1236460180);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1236460180);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double
+ .d2-1236460180 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1236460180);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1236460180);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1236460180);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1236460180);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double
three-dee
diff --git a/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg b/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg
index 7a7f7ef348..59831a18ce 100644
--- a/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg
@@ -89,7 +89,7 @@
.d2-773068003 .color-AA4{color:#EDF0FD;}
.d2-773068003 .color-AA5{color:#F7F8FE;}
.d2-773068003 .color-AB4{color:#EDF0FD;}
- .d2-773068003 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-773068003);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-773068003);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-773068003);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-773068003);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double
+ .d2-773068003 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-773068003);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-773068003);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-773068003);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-773068003);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double
three-dee
diff --git a/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg b/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg
index d3e69ba72a..7a9edded4e 100644
--- a/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg
@@ -103,7 +103,7 @@
.d2-183595053 .color-AA4{color:#EDF0FD;}
.d2-183595053 .color-AA5{color:#F7F8FE;}
.d2-183595053 .color-AB4{color:#EDF0FD;}
- .d2-183595053 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-183595053);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-183595053);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-183595053);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-183595053);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist
+ .d2-183595053 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-183595053);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-183595053);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-183595053);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-183595053);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist
diff --git a/e2etests/testdata/stable/elk_shim/elk/sketch.exp.svg b/e2etests/testdata/stable/elk_shim/elk/sketch.exp.svg
index 5050d66d52..9c2434a016 100644
--- a/e2etests/testdata/stable/elk_shim/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/elk_shim/elk/sketch.exp.svg
@@ -103,7 +103,7 @@
.d2-2410870253 .color-AA4{color:#EDF0FD;}
.d2-2410870253 .color-AA5{color:#F7F8FE;}
.d2-2410870253 .color-AB4{color:#EDF0FD;}
- .d2-2410870253 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2410870253);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2410870253);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2410870253);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2410870253);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist
+ .d2-2410870253 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2410870253);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2410870253);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2410870253);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2410870253);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist
diff --git a/e2etests/testdata/stable/grid_outside_labels/dagre/sketch.exp.svg b/e2etests/testdata/stable/grid_outside_labels/dagre/sketch.exp.svg
index 667a59d1f2..cfba26a6d4 100644
--- a/e2etests/testdata/stable/grid_outside_labels/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/grid_outside_labels/dagre/sketch.exp.svg
@@ -91,7 +91,7 @@
.d2-269116138 .color-AB4{color:#EDF0FD;}
.d2-269116138 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-269116138);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-269116138);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-269116138);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-269116138);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-269116138);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-269116138);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-269116138);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>___________________________________container____________________________________amscd plugin
-braket plugincancel plugincolor plugingensymb pluginmhchem pluginphysics pluginmultilinesasmµ
+braket plugincancel plugincolor plugingensymb pluginmhchem pluginphysics pluginmultilinesasmµ
diff --git a/e2etests/testdata/stable/grid_outside_labels/elk/sketch.exp.svg b/e2etests/testdata/stable/grid_outside_labels/elk/sketch.exp.svg
index 47dacb2655..d9fd73568a 100644
--- a/e2etests/testdata/stable/grid_outside_labels/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/grid_outside_labels/elk/sketch.exp.svg
@@ -91,7 +91,7 @@
.d2-1333473382 .color-AB4{color:#EDF0FD;}
.d2-1333473382 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1333473382);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1333473382);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1333473382);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1333473382);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1333473382);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1333473382);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1333473382);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>___________________________________container____________________________________amscd plugin
-braket plugincancel plugincolor plugingensymb pluginmhchem pluginphysics pluginmultilinesasmµ
+braket plugincancel plugincolor plugingensymb pluginmhchem pluginphysics pluginmultilinesasmµ
diff --git a/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg b/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg
index 534d66a509..51d54fc48b 100644
--- a/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg
@@ -103,7 +103,7 @@
.d2-3097297157 .color-AA4{color:#EDF0FD;}
.d2-3097297157 .color-AA5{color:#F7F8FE;}
.d2-3097297157 .color-AB4{color:#EDF0FD;}
- .d2-3097297157 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3097297157);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3097297157);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3097297157);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3097297157);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>SATELLITESTRANSMITTER SENDSENDSEND
+ .d2-3097297157 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3097297157);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3097297157);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3097297157);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3097297157);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>SATELLITESTRANSMITTER SENDSENDSEND
diff --git a/e2etests/testdata/stable/mono-font/elk/sketch.exp.svg b/e2etests/testdata/stable/mono-font/elk/sketch.exp.svg
index 21f5c447b2..8cd004318f 100644
--- a/e2etests/testdata/stable/mono-font/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/mono-font/elk/sketch.exp.svg
@@ -103,7 +103,7 @@
.d2-3660418575 .color-AA4{color:#EDF0FD;}
.d2-3660418575 .color-AA5{color:#F7F8FE;}
.d2-3660418575 .color-AB4{color:#EDF0FD;}
- .d2-3660418575 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3660418575);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3660418575);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3660418575);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3660418575);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>SATELLITESTRANSMITTER SENDSENDSEND
+ .d2-3660418575 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3660418575);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3660418575);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3660418575);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3660418575);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>SATELLITESTRANSMITTER SENDSENDSEND
diff --git a/e2etests/testdata/stable/multiple_box_selection/dagre/sketch.exp.svg b/e2etests/testdata/stable/multiple_box_selection/dagre/sketch.exp.svg
index 962862f036..427867464b 100644
--- a/e2etests/testdata/stable/multiple_box_selection/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/multiple_box_selection/dagre/sketch.exp.svg
@@ -96,7 +96,7 @@
.d2-3028019976 .color-AA4{color:#EDF0FD;}
.d2-3028019976 .color-AA5{color:#F7F8FE;}
.d2-3028019976 .color-AB4{color:#EDF0FD;}
- .d2-3028019976 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3028019976);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3028019976);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3028019976);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3028019976);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>outerstartendvolume groupvolume definitionvolume
+ .d2-3028019976 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3028019976);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3028019976);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3028019976);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3028019976);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>outerstartendvolume groupvolume definitionvolume
diff --git a/e2etests/testdata/stable/multiple_box_selection/elk/sketch.exp.svg b/e2etests/testdata/stable/multiple_box_selection/elk/sketch.exp.svg
index 1e8d24e295..c53015cf53 100644
--- a/e2etests/testdata/stable/multiple_box_selection/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/multiple_box_selection/elk/sketch.exp.svg
@@ -96,7 +96,7 @@
.d2-2029988810 .color-AA4{color:#EDF0FD;}
.d2-2029988810 .color-AA5{color:#F7F8FE;}
.d2-2029988810 .color-AB4{color:#EDF0FD;}
- .d2-2029988810 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2029988810);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2029988810);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2029988810);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2029988810);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>outerstartendvolume groupvolume definitionvolume
+ .d2-2029988810 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2029988810);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2029988810);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2029988810);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2029988810);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>outerstartendvolume groupvolume definitionvolume
diff --git a/e2etests/testdata/stable/multiple_offset/dagre/sketch.exp.svg b/e2etests/testdata/stable/multiple_offset/dagre/sketch.exp.svg
index 7c1899b680..4a1e04b393 100644
--- a/e2etests/testdata/stable/multiple_offset/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/multiple_offset/dagre/sketch.exp.svg
@@ -96,21 +96,21 @@
.d2-3863633706 .color-AA4{color:#EDF0FD;}
.d2-3863633706 .color-AA5{color:#F7F8FE;}
.d2-3863633706 .color-AB4{color:#EDF0FD;}
- .d2-3863633706 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3863633706);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3863633706);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3863633706);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3863633706);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3
+ .d2-3863633706 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3863633706);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3863633706);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3863633706);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3863633706);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3
-n4n5
+n4n5
-n6n7
+n6n7
-n8n9
+n8n9
-n10aba
+n10aba
-baba
+baba
-bababab
+bababab
-abab
+abab
a
diff --git a/e2etests/testdata/stable/multiple_offset/elk/sketch.exp.svg b/e2etests/testdata/stable/multiple_offset/elk/sketch.exp.svg
index aaf2ac6d62..0a53f159f5 100644
--- a/e2etests/testdata/stable/multiple_offset/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/multiple_offset/elk/sketch.exp.svg
@@ -96,21 +96,21 @@
.d2-2956067749 .color-AA4{color:#EDF0FD;}
.d2-2956067749 .color-AA5{color:#F7F8FE;}
.d2-2956067749 .color-AB4{color:#EDF0FD;}
- .d2-2956067749 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2956067749);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2956067749);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2956067749);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2956067749);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3
+ .d2-2956067749 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2956067749);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2956067749);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2956067749);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2956067749);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3
-n4n5
+n4n5
-n6n7
+n6n7
-n8n9
+n8n9
-n10aba
+n10aba
-baba
+baba
-bababab
+bababab
-abab
+abab
a
diff --git a/e2etests/testdata/stable/multiple_offset_left/dagre/sketch.exp.svg b/e2etests/testdata/stable/multiple_offset_left/dagre/sketch.exp.svg
index 70b2a01fe1..130b3941d5 100644
--- a/e2etests/testdata/stable/multiple_offset_left/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/multiple_offset_left/dagre/sketch.exp.svg
@@ -96,21 +96,21 @@
.d2-1825809757 .color-AA4{color:#EDF0FD;}
.d2-1825809757 .color-AA5{color:#F7F8FE;}
.d2-1825809757 .color-AB4{color:#EDF0FD;}
- .d2-1825809757 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1825809757);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1825809757);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1825809757);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1825809757);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3
+ .d2-1825809757 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1825809757);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1825809757);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1825809757);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1825809757);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3
-n4n5
+n4n5
-n6n7
+n6n7
-n8n9
+n8n9
-n10aba
+n10aba
-baba
+baba
-bababab
+bababab
-abab
+abab
a
diff --git a/e2etests/testdata/stable/multiple_offset_left/elk/sketch.exp.svg b/e2etests/testdata/stable/multiple_offset_left/elk/sketch.exp.svg
index bbfab5a676..6a3d2d77e9 100644
--- a/e2etests/testdata/stable/multiple_offset_left/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/multiple_offset_left/elk/sketch.exp.svg
@@ -96,21 +96,21 @@
.d2-1207717161 .color-AA4{color:#EDF0FD;}
.d2-1207717161 .color-AA5{color:#F7F8FE;}
.d2-1207717161 .color-AB4{color:#EDF0FD;}
- .d2-1207717161 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1207717161);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1207717161);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1207717161);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1207717161);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3
+ .d2-1207717161 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1207717161);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1207717161);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1207717161);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1207717161);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3
-n4n5
+n4n5
-n6n7
+n6n7
-n8n9
+n8n9
-n10aba
+n10aba
-baba
+baba
-bababab
+bababab
-abab
+abab
a
diff --git a/e2etests/testdata/stable/multiple_person_label/dagre/sketch.exp.svg b/e2etests/testdata/stable/multiple_person_label/dagre/sketch.exp.svg
index cc74a4c080..cd93dc5502 100644
--- a/e2etests/testdata/stable/multiple_person_label/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/multiple_person_label/dagre/sketch.exp.svg
@@ -89,7 +89,7 @@
.d2-1389951319 .color-AA4{color:#EDF0FD;}
.d2-1389951319 .color-AA5{color:#F7F8FE;}
.d2-1389951319 .color-AB4{color:#EDF0FD;}
- .d2-1389951319 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1389951319);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1389951319);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1389951319);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1389951319);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>あ
+ .d2-1389951319 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1389951319);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1389951319);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1389951319);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1389951319);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>あ
\ No newline at end of file
diff --git a/e2etests/testdata/stable/multiple_person_label/elk/sketch.exp.svg b/e2etests/testdata/stable/multiple_person_label/elk/sketch.exp.svg
index ef269e2f1b..4fb36bc065 100644
--- a/e2etests/testdata/stable/multiple_person_label/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/multiple_person_label/elk/sketch.exp.svg
@@ -89,7 +89,7 @@
.d2-3688633770 .color-AA4{color:#EDF0FD;}
.d2-3688633770 .color-AA5{color:#F7F8FE;}
.d2-3688633770 .color-AB4{color:#EDF0FD;}
- .d2-3688633770 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3688633770);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3688633770);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3688633770);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3688633770);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>あ
+ .d2-3688633770 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3688633770);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3688633770);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3688633770);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3688633770);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>あ
\ No newline at end of file
diff --git a/e2etests/testdata/stable/nesting_power/dagre/sketch.exp.svg b/e2etests/testdata/stable/nesting_power/dagre/sketch.exp.svg
index a7cfde624a..e398ef91c9 100644
--- a/e2etests/testdata/stable/nesting_power/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/nesting_power/dagre/sketch.exp.svg
@@ -111,7 +111,7 @@
-Left Constant NearcenterdirectionsRight Constant NearseqmoreBottom Left Constant Neardefaultlayouthererectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloudrightleftisconstantandalsogridscoreritemResponseitemessayRubricconceptitemOutcomestylishcontaineradagreelktalathisisgrid12341234updownnearax
+Left Constant NearcenterdirectionsRight Constant NearseqmoreBottom Left Constant Neardefaultlayouthererectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloudrightleftisconstantandalsogridscoreritemResponseitemessayRubricconceptitemOutcomestylishcontaineradagreelktalathisisgrid12341234updownnearax
ya_sequencea_shapesequencefinallybrow 1row 2row 3row 4row 5withasequence diagramyou canchild of is12341234scoreritemResponseitemessayRubricconceptsequencefrom one constant nearhaveanothergridhere andgrandchildscorerconceptessayRubricitemitemOutcomeitemResponse123continuenesting ororruns thisruns thisruns thisA straight edge across straight edge across nested typesdefault layoutdefault layoutdefault layout in styleto inside sequence diagramto inside sequence diagramto inside sequence diagramto constant nearfrom within constant nearto another getItem() itemgetRubric()rubricapplyTo(essayResp)match(essayResponse)score
diff --git a/e2etests/testdata/stable/nesting_power/elk/sketch.exp.svg b/e2etests/testdata/stable/nesting_power/elk/sketch.exp.svg
index 39f3aef5c4..5153d691b5 100644
--- a/e2etests/testdata/stable/nesting_power/elk/sketch.exp.svg
+++ b/e2etests/testdata/stable/nesting_power/elk/sketch.exp.svg
@@ -111,7 +111,7 @@
-Left Constant NearcenterdirectionsRight Constant NearseqmoreBottom Left Constant Neardefaultlayouthererectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloudrightleftisconstantandalsogridscoreritemResponseitemessayRubricconceptitemOutcomestylishcontaineradagreelktalathisisgrid12341234updownnearax
+Left Constant NearcenterdirectionsRight Constant NearseqmoreBottom Left Constant Neardefaultlayouthererectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloudrightleftisconstantandalsogridscoreritemResponseitemessayRubricconceptitemOutcomestylishcontaineradagreelktalathisisgrid12341234updownnearax
ya_sequencea_shapesequencefinallybrow 1row 2row 3row 4row 5withasequence diagramyou canchild of is12341234scoreritemResponseitemessayRubricconceptsequencefrom one constant nearhaveanothergridhere andgrandchildscorerconceptessayRubricitemitemOutcomeitemResponse123continuenesting ororruns thisruns thisruns thisA straight edge across straight edge across nested typesdefault layoutdefault layoutdefault layout in styleto inside sequence diagramto inside sequence diagramto inside sequence diagramto constant nearfrom within constant nearto another getItem() itemgetRubric()rubricapplyTo(essayResp)match(essayResponse)score
diff --git a/e2etests/testdata/themes/dark_terrastruct_flagship/dagre/sketch.exp.svg b/e2etests/testdata/themes/dark_terrastruct_flagship/dagre/sketch.exp.svg
index ada82f6d65..14a4b31d35 100644
--- a/e2etests/testdata/themes/dark_terrastruct_flagship/dagre/sketch.exp.svg
+++ b/e2etests/testdata/themes/dark_terrastruct_flagship/dagre/sketch.exp.svg
@@ -856,7 +856,7 @@
.d2-4193111014 .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em;
}
-networkuserapi serverlogsusersidintnamestringemailstringpasswordstringlast_logindatetimeproducts+idint+pricedecimal+skustring+namestringA tale
+
networkuserapi serverlogsusersidintnamestringemailstringpasswordstringlast_logindatetimeproducts+idint+pricedecimal+skustring+namestringA tale
- of
- two cities
@@ -907,7 +907,7 @@
city2 := City{Name: "CityB", Population: 1200000}
tellTale(city1, city2)
-}Cell Toweronline portaldata processorsatellitesTRANSMITTERuistorage sendsendsendphone logsmake call accessdisplaypersist
+}Cell Toweronline portaldata processorsatellitesTRANSMITTERuistorage sendsendsendphone logsmake call accessdisplaypersist
diff --git a/e2etests/testdata/themes/dark_terrastruct_flagship/elk/sketch.exp.svg b/e2etests/testdata/themes/dark_terrastruct_flagship/elk/sketch.exp.svg
index efb12d84af..da6353a709 100644
--- a/e2etests/testdata/themes/dark_terrastruct_flagship/elk/sketch.exp.svg
+++ b/e2etests/testdata/themes/dark_terrastruct_flagship/elk/sketch.exp.svg
@@ -856,7 +856,7 @@
.d2-3996577446 .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em;
}
-networkuserapi serverlogsusersidintnamestringemailstringpasswordstringlast_logindatetimeproducts+idint+pricedecimal+skustring+namestringA tale
+
networkuserapi serverlogsusersidintnamestringemailstringpasswordstringlast_logindatetimeproducts+idint+pricedecimal+skustring+namestringA tale
- of
- two cities
@@ -907,7 +907,7 @@
city2 := City{Name: "CityB", Population: 1200000}
tellTale(city1, city2)
-}Cell Toweronline portaldata processorsatellitesTRANSMITTERuistorage sendsendsendphone logsmake call accessdisplaypersist
+}Cell Toweronline portaldata processorsatellitesTRANSMITTERuistorage sendsendsendphone logsmake call accessdisplaypersist
diff --git a/e2etests/testdata/themes/origami/dagre/sketch.exp.svg b/e2etests/testdata/themes/origami/dagre/sketch.exp.svg
index a0e043c66c..b61dc88e47 100644
--- a/e2etests/testdata/themes/origami/dagre/sketch.exp.svg
+++ b/e2etests/testdata/themes/origami/dagre/sketch.exp.svg
@@ -1167,7 +1167,7 @@
-通信網ユーザーOTHER-USERapi サーバーログCell Towerオンラインポータルデータプロセッサ衛星送信機ui保管所 sendSENDsend電話ログ電話をかける アクセス画面持続する
+通信網ユーザーOTHER-USERapi サーバーログCell Towerオンラインポータルデータプロセッサ衛星送信機ui保管所 sendSENDsend電話ログ電話をかける アクセス画面持続する
diff --git a/e2etests/testdata/themes/origami/elk/sketch.exp.svg b/e2etests/testdata/themes/origami/elk/sketch.exp.svg
index 35c7ba9505..8975d077c7 100644
--- a/e2etests/testdata/themes/origami/elk/sketch.exp.svg
+++ b/e2etests/testdata/themes/origami/elk/sketch.exp.svg
@@ -1167,7 +1167,7 @@
-通信網ユーザーOTHER-USERapi サーバーログCell Towerオンラインポータルデータプロセッサ衛星送信機ui保管所 sendSENDsend電話ログ電話をかける アクセス画面持続する
+通信網ユーザーOTHER-USERapi サーバーログCell Towerオンラインポータルデータプロセッサ衛星送信機ui保管所 sendSENDsend電話ログ電話をかける アクセス画面持続する
diff --git a/e2etests/testdata/themes/terminal/dagre/sketch.exp.svg b/e2etests/testdata/themes/terminal/dagre/sketch.exp.svg
index bb38c34ce4..450d821085 100644
--- a/e2etests/testdata/themes/terminal/dagre/sketch.exp.svg
+++ b/e2etests/testdata/themes/terminal/dagre/sketch.exp.svg
@@ -882,7 +882,7 @@
-NETWORKUSERAPI SERVERLOGSUSERSidintnamestringemailstringpasswordstringlast_logindatetimePRODUCTS+idint+pricedecimal+skustring+namestringA TALE
+
NETWORKUSERAPI SERVERLOGSUSERSidintnamestringemailstringpasswordstringlast_logindatetimePRODUCTS+idint+pricedecimal+skustring+namestringA TALE
- OF
- TWO CITIES
@@ -933,7 +933,7 @@
city2 := City{Name: "CityB", Population: 1200000}
tellTale(city1, city2)
-}Cell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST
+}Cell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST
diff --git a/e2etests/testdata/themes/terminal/elk/sketch.exp.svg b/e2etests/testdata/themes/terminal/elk/sketch.exp.svg
index d51c83fa04..3401dfff78 100644
--- a/e2etests/testdata/themes/terminal/elk/sketch.exp.svg
+++ b/e2etests/testdata/themes/terminal/elk/sketch.exp.svg
@@ -882,7 +882,7 @@
-NETWORKUSERAPI SERVERLOGSUSERSidintnamestringemailstringpasswordstringlast_logindatetimePRODUCTS+idint+pricedecimal+skustring+namestringA TALE
+
NETWORKUSERAPI SERVERLOGSUSERSidintnamestringemailstringpasswordstringlast_logindatetimePRODUCTS+idint+pricedecimal+skustring+namestringA TALE
- OF
- TWO CITIES
@@ -933,7 +933,7 @@
city2 := City{Name: "CityB", Population: 1200000}
tellTale(city1, city2)
-}Cell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST
+}Cell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST
diff --git a/e2etests/testdata/themes/terminal_grayscale/dagre/sketch.exp.svg b/e2etests/testdata/themes/terminal_grayscale/dagre/sketch.exp.svg
index 176d18b51d..a65708a8cc 100644
--- a/e2etests/testdata/themes/terminal_grayscale/dagre/sketch.exp.svg
+++ b/e2etests/testdata/themes/terminal_grayscale/dagre/sketch.exp.svg
@@ -136,7 +136,7 @@
-NETWORKUSERAPI SERVERLOGSCell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDphone logsMAKE CALL ACCESSDISPLAYPERSIST
+NETWORKUSERAPI SERVERLOGSCell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDphone logsMAKE CALL ACCESSDISPLAYPERSIST
diff --git a/e2etests/testdata/themes/terminal_grayscale/elk/sketch.exp.svg b/e2etests/testdata/themes/terminal_grayscale/elk/sketch.exp.svg
index ab6815b165..f3e698f71a 100644
--- a/e2etests/testdata/themes/terminal_grayscale/elk/sketch.exp.svg
+++ b/e2etests/testdata/themes/terminal_grayscale/elk/sketch.exp.svg
@@ -136,7 +136,7 @@
-NETWORKUSERAPI SERVERLOGSCell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDphone logsMAKE CALL ACCESSDISPLAYPERSIST
+NETWORKUSERAPI SERVERLOGSCell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDphone logsMAKE CALL ACCESSDISPLAYPERSIST
diff --git a/e2etests/testdata/txtar/multiple_opacity/dagre/board.exp.json b/e2etests/testdata/txtar/multiple_opacity/dagre/board.exp.json
new file mode 100644
index 0000000000..70f9fabc96
--- /dev/null
+++ b/e2etests/testdata/txtar/multiple_opacity/dagre/board.exp.json
@@ -0,0 +1,100 @@
+{
+ "name": "",
+ "config": {
+ "sketch": false,
+ "themeID": 0,
+ "darkThemeID": null,
+ "pad": null,
+ "center": null,
+ "layoutEngine": null
+ },
+ "isFolderOnly": false,
+ "fontFamily": "SourceSansPro",
+ "shapes": [
+ {
+ "id": "a",
+ "type": "rectangle",
+ "pos": {
+ "x": 0,
+ "y": 0
+ },
+ "width": 53,
+ "height": 66,
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "borderRadius": 0,
+ "fill": "B6",
+ "stroke": "B1",
+ "animated": false,
+ "shadow": false,
+ "3d": false,
+ "multiple": true,
+ "multipleOpacity": 0.5,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "a",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N1",
+ "italic": false,
+ "bold": true,
+ "underline": false,
+ "labelWidth": 8,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "zIndex": 0,
+ "level": 1
+ }
+ ],
+ "connections": [],
+ "root": {
+ "id": "",
+ "type": "",
+ "pos": {
+ "x": 0,
+ "y": 0
+ },
+ "width": 0,
+ "height": 0,
+ "opacity": 0,
+ "strokeDash": 0,
+ "strokeWidth": 0,
+ "borderRadius": 0,
+ "fill": "N7",
+ "stroke": "",
+ "animated": false,
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 0,
+ "labelHeight": 0,
+ "zIndex": 0,
+ "level": 0
+ }
+}
diff --git a/e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg b/e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg
new file mode 100644
index 0000000000..e93b7433fd
--- /dev/null
+++ b/e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg
@@ -0,0 +1,95 @@
+a
+
+
+
\ No newline at end of file
diff --git a/e2etests/testdata/txtar/multiple_opacity/elk/board.exp.json b/e2etests/testdata/txtar/multiple_opacity/elk/board.exp.json
new file mode 100644
index 0000000000..a2dd469a4c
--- /dev/null
+++ b/e2etests/testdata/txtar/multiple_opacity/elk/board.exp.json
@@ -0,0 +1,100 @@
+{
+ "name": "",
+ "config": {
+ "sketch": false,
+ "themeID": 0,
+ "darkThemeID": null,
+ "pad": null,
+ "center": null,
+ "layoutEngine": null
+ },
+ "isFolderOnly": false,
+ "fontFamily": "SourceSansPro",
+ "shapes": [
+ {
+ "id": "a",
+ "type": "rectangle",
+ "pos": {
+ "x": 12,
+ "y": 22
+ },
+ "width": 53,
+ "height": 66,
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "borderRadius": 0,
+ "fill": "B6",
+ "stroke": "B1",
+ "animated": false,
+ "shadow": false,
+ "3d": false,
+ "multiple": true,
+ "multipleOpacity": 0.5,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "a",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N1",
+ "italic": false,
+ "bold": true,
+ "underline": false,
+ "labelWidth": 8,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "zIndex": 0,
+ "level": 1
+ }
+ ],
+ "connections": [],
+ "root": {
+ "id": "",
+ "type": "",
+ "pos": {
+ "x": 0,
+ "y": 0
+ },
+ "width": 0,
+ "height": 0,
+ "opacity": 0,
+ "strokeDash": 0,
+ "strokeWidth": 0,
+ "borderRadius": 0,
+ "fill": "N7",
+ "stroke": "",
+ "animated": false,
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 0,
+ "labelHeight": 0,
+ "zIndex": 0,
+ "level": 0
+ }
+}
diff --git a/e2etests/testdata/txtar/multiple_opacity/elk/sketch.exp.svg b/e2etests/testdata/txtar/multiple_opacity/elk/sketch.exp.svg
new file mode 100644
index 0000000000..e8bb6453d4
--- /dev/null
+++ b/e2etests/testdata/txtar/multiple_opacity/elk/sketch.exp.svg
@@ -0,0 +1,95 @@
+a
+
+
+
\ No newline at end of file
diff --git a/e2etests/testdata/txtar/shape-animate/dagre/sketch.exp.svg b/e2etests/testdata/txtar/shape-animate/dagre/sketch.exp.svg
index f60d0396fd..3c92e45cce 100644
--- a/e2etests/testdata/txtar/shape-animate/dagre/sketch.exp.svg
+++ b/e2etests/testdata/txtar/shape-animate/dagre/sketch.exp.svg
@@ -144,7 +144,7 @@
-NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SENDSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST
+NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SENDSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST
diff --git a/e2etests/testdata/txtar/shape-animate/elk/sketch.exp.svg b/e2etests/testdata/txtar/shape-animate/elk/sketch.exp.svg
index 6b662c119f..19db9b6382 100644
--- a/e2etests/testdata/txtar/shape-animate/elk/sketch.exp.svg
+++ b/e2etests/testdata/txtar/shape-animate/elk/sketch.exp.svg
@@ -144,7 +144,7 @@
-NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SENDSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST
+NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SENDSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST
diff --git a/e2etests/testdata/txtar/theme-overrides/dagre/sketch.exp.svg b/e2etests/testdata/txtar/theme-overrides/dagre/sketch.exp.svg
index 8b110b2a41..b1d3bff32c 100644
--- a/e2etests/testdata/txtar/theme-overrides/dagre/sketch.exp.svg
+++ b/e2etests/testdata/txtar/theme-overrides/dagre/sketch.exp.svg
@@ -103,7 +103,7 @@
.d2-586632521 .color-AA4{color:#42A5F5;}
.d2-586632521 .color-AA5{color:#90CAF9;}
.d2-586632521 .color-AB4{color:#F44336;}
- .d2-586632521 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access
+ .d2-586632521 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access
diff --git a/e2etests/testdata/txtar/theme-overrides/elk/sketch.exp.svg b/e2etests/testdata/txtar/theme-overrides/elk/sketch.exp.svg
index a702e2a785..3894feeda9 100644
--- a/e2etests/testdata/txtar/theme-overrides/elk/sketch.exp.svg
+++ b/e2etests/testdata/txtar/theme-overrides/elk/sketch.exp.svg
@@ -103,7 +103,7 @@
.d2-2010673424 .color-AA4{color:#42A5F5;}
.d2-2010673424 .color-AA5{color:#90CAF9;}
.d2-2010673424 .color-AB4{color:#F44336;}
- .d2-2010673424 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2010673424);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2010673424);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access
+ .d2-2010673424 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2010673424);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2010673424);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access
diff --git a/e2etests/txtar.txt b/e2etests/txtar.txt
index 84ddd17426..fed81c8907 100644
--- a/e2etests/txtar.txt
+++ b/e2etests/txtar.txt
@@ -1204,6 +1204,14 @@ customer4: |md
shape: c4-person
}
+-- multiple opacity --
+a: {
+ style: {
+ multiple: true
+ multiple.opacity: 0.5
+ }
+}
+
-- edge-special-text --
a -> b: |latex
\lim_{h \rightarrow 0 } \frac{f(x+h)-f(x)}{h}
@@ -1241,3 +1249,4 @@ func main() {
fmt.Println("Hello World")
}
|
+