Merge pull request #1207 from gavin-ts/arrowhead-label-dimensions

Update arrowhead label positioning and use label dimensions
This commit is contained in:
gavin-ts 2023-04-17 15:26:57 -07:00 committed by GitHub
commit eae415a206
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
762 changed files with 48387 additions and 44117 deletions

View file

@ -8,6 +8,7 @@
- Markdown text can now be adjusted with `font-size` [#1191](https://github.com/terrastruct/d2/issues/1191) - Markdown text can now be adjusted with `font-size` [#1191](https://github.com/terrastruct/d2/issues/1191)
- SVG outputs for internal links use relative paths instead of absolute [#1197](https://github.com/terrastruct/d2/pull/1197) - SVG outputs for internal links use relative paths instead of absolute [#1197](https://github.com/terrastruct/d2/pull/1197)
- Improves arrowhead label positioning [#1207](https://github.com/terrastruct/d2/pull/1207)
#### Bugfixes ⛑️ #### Bugfixes ⛑️

View file

@ -213,7 +213,11 @@ func toConnection(edge *d2graph.Edge, theme *d2themes.Theme) d2target.Connection
} }
if edge.SrcArrowhead != nil { if edge.SrcArrowhead != nil {
if edge.SrcArrowhead.Label.Value != "" { if edge.SrcArrowhead.Label.Value != "" {
connection.SrcLabel = edge.SrcArrowhead.Label.Value connection.SrcLabel = &d2target.Text{
Label: edge.SrcArrowhead.Label.Value,
LabelWidth: edge.SrcArrowhead.LabelDimensions.Width,
LabelHeight: edge.SrcArrowhead.LabelDimensions.Height,
}
} }
} }
if edge.DstArrow { if edge.DstArrow {
@ -230,7 +234,11 @@ func toConnection(edge *d2graph.Edge, theme *d2themes.Theme) d2target.Connection
} }
if edge.DstArrowhead != nil { if edge.DstArrowhead != nil {
if edge.DstArrowhead.Label.Value != "" { if edge.DstArrowhead.Label.Value != "" {
connection.DstLabel = edge.DstArrowhead.Label.Value connection.DstLabel = &d2target.Text{
Label: edge.DstArrowhead.Label.Value,
LabelWidth: edge.DstArrowhead.LabelDimensions.Width,
LabelHeight: edge.DstArrowhead.LabelDimensions.Height,
}
} }
} }
if theme != nil && theme.SpecialRules.NoCornerRadius { if theme != nil && theme.SpecialRules.NoCornerRadius {

View file

@ -1042,9 +1042,6 @@ func (obj *Object) OuterNearContainer() *Object {
type Edge struct { type Edge struct {
Index int `json:"index"` Index int `json:"index"`
MinWidth int `json:"minWidth"`
MinHeight int `json:"minHeight"`
SrcTableColumnIndex *int `json:"srcTableColumnIndex,omitempty"` SrcTableColumnIndex *int `json:"srcTableColumnIndex,omitempty"`
DstTableColumnIndex *int `json:"dstTableColumnIndex,omitempty"` DstTableColumnIndex *int `json:"dstTableColumnIndex,omitempty"`
@ -1471,21 +1468,23 @@ func (g *Graph) SetDimensions(mtexts []*d2target.MText, ruler *textmeasure.Ruler
} }
} }
for _, edge := range g.Edges { for _, edge := range g.Edges {
endpointLabels := []string{} usedFont := fontFamily
if edge.SrcArrowhead != nil && edge.SrcArrowhead.Label.Value != "" { if edge.Style.Font != nil {
endpointLabels = append(endpointLabels, edge.SrcArrowhead.Label.Value) f := d2fonts.D2_FONT_TO_FAMILY[edge.Style.Font.Value]
} usedFont = &f
if edge.DstArrowhead != nil && edge.DstArrowhead.Label.Value != "" {
endpointLabels = append(endpointLabels, edge.DstArrowhead.Label.Value)
} }
for _, label := range endpointLabels { if edge.SrcArrowhead != nil && edge.SrcArrowhead.Label.Value != "" {
t := edge.Text() t := edge.Text()
t.Text = label t.Text = edge.SrcArrowhead.Label.Value
dims := GetTextDimensions(mtexts, ruler, t, fontFamily) dims := GetTextDimensions(mtexts, ruler, t, usedFont)
edge.MinWidth += dims.Width edge.SrcArrowhead.LabelDimensions = *dims
// Some padding as it's not totally near the end }
edge.MinHeight += dims.Height + 5 if edge.DstArrowhead != nil && edge.DstArrowhead.Label.Value != "" {
t := edge.Text()
t.Text = edge.DstArrowhead.Label.Value
dims := GetTextDimensions(mtexts, ruler, t, usedFont)
edge.DstArrowhead.LabelDimensions = *dims
} }
if edge.Label.Value == "" { if edge.Label.Value == "" {
@ -1497,20 +1496,12 @@ func (g *Graph) SetDimensions(mtexts []*d2target.MText, ruler *textmeasure.Ruler
} }
edge.ApplyTextTransform() edge.ApplyTextTransform()
usedFont := fontFamily
if edge.Style.Font != nil {
f := d2fonts.D2_FONT_TO_FAMILY[edge.Style.Font.Value]
usedFont = &f
}
dims := GetTextDimensions(mtexts, ruler, edge.Text(), usedFont) dims := GetTextDimensions(mtexts, ruler, edge.Text(), usedFont)
if dims == nil { if dims == nil {
return fmt.Errorf("dimensions for edge label %#v not found", edge.Text()) return fmt.Errorf("dimensions for edge label %#v not found", edge.Text())
} }
edge.LabelDimensions = *dims edge.LabelDimensions = *dims
edge.MinWidth += dims.Width
edge.MinHeight += dims.Height
} }
return nil return nil
} }

View file

@ -388,22 +388,6 @@ func CompareSerializedEdge(edge, other *Edge) error {
) )
} }
if edge.MinWidth != other.MinWidth {
return fmt.Errorf(
"min width differs: edge=%d, other=%d",
edge.MinWidth,
other.MinWidth,
)
}
if edge.MinHeight != other.MinHeight {
return fmt.Errorf(
"min height differs: edge=%d, other=%d",
edge.MinHeight,
other.MinHeight,
)
}
if edge.Label.Value != other.Label.Value { if edge.Label.Value != other.Label.Value {
return fmt.Errorf( return fmt.Errorf(
"labels differ: edge=%s, other=%s", "labels differ: edge=%s, other=%s",

View file

@ -1293,6 +1293,14 @@ queue -> package -> step
callout -> stored_data -> person callout -> stored_data -> person
diamond -> oval -> circle diamond -> oval -> circle
hexagon -> cloud hexagon -> cloud
`,
},
{
name: "long_arrowhead_label",
script: `
a -> b: {
target-arrowhead: "a to b with unexpectedly long target arrowhead label"
}
`, `,
}, },
} }

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 127 KiB

After

Width:  |  Height:  |  Size: 127 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 118 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 67 KiB

After

Width:  |  Height:  |  Size: 67 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 58 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 125 KiB

After

Width:  |  Height:  |  Size: 125 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 115 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 52 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 62 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 53 KiB

After

Width:  |  Height:  |  Size: 53 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 58 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 49 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 161 KiB

After

Width:  |  Height:  |  Size: 161 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 152 KiB

After

Width:  |  Height:  |  Size: 152 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 162 KiB

After

Width:  |  Height:  |  Size: 162 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 165 KiB

After

Width:  |  Height:  |  Size: 165 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 108 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 59 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 63 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 103 KiB

After

Width:  |  Height:  |  Size: 103 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 94 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 493 KiB

After

Width:  |  Height:  |  Size: 493 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 118 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 74 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 108 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 201 KiB

After

Width:  |  Height:  |  Size: 201 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 201 KiB

After

Width:  |  Height:  |  Size: 201 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 676 KiB

After

Width:  |  Height:  |  Size: 676 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 661 KiB

After

Width:  |  Height:  |  Size: 661 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 661 KiB

After

Width:  |  Height:  |  Size: 661 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 661 KiB

After

Width:  |  Height:  |  Size: 660 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 661 KiB

After

Width:  |  Height:  |  Size: 660 KiB

View file

@ -20,8 +20,6 @@ import (
"github.com/alecthomas/chroma/v2/lexers" "github.com/alecthomas/chroma/v2/lexers"
"github.com/alecthomas/chroma/v2/styles" "github.com/alecthomas/chroma/v2/styles"
"oss.terrastruct.com/util-go/go2"
"oss.terrastruct.com/d2/d2graph" "oss.terrastruct.com/d2/d2graph"
"oss.terrastruct.com/d2/d2renderers/d2fonts" "oss.terrastruct.com/d2/d2renderers/d2fonts"
"oss.terrastruct.com/d2/d2renderers/d2latex" "oss.terrastruct.com/d2/d2renderers/d2latex"
@ -40,7 +38,6 @@ import (
const ( const (
DEFAULT_PADDING = 100 DEFAULT_PADDING = 100
MIN_ARROWHEAD_STROKE_WIDTH = 2
appendixIconRadius = 16 appendixIconRadius = 16
) )
@ -109,56 +106,13 @@ func arrowheadMarkerID(isTarget bool, connection d2target.Connection) string {
))) )))
} }
func arrowheadDimensions(arrowhead d2target.Arrowhead, strokeWidth float64) (width, height float64) {
var baseWidth, baseHeight float64
var widthMultiplier, heightMultiplier float64
switch arrowhead {
case d2target.ArrowArrowhead:
baseWidth = 4
baseHeight = 4
widthMultiplier = 4
heightMultiplier = 4
case d2target.TriangleArrowhead:
baseWidth = 4
baseHeight = 4
widthMultiplier = 3
heightMultiplier = 4
case d2target.LineArrowhead:
widthMultiplier = 5
heightMultiplier = 8
case d2target.FilledDiamondArrowhead:
baseWidth = 11
baseHeight = 7
widthMultiplier = 5.5
heightMultiplier = 3.5
case d2target.DiamondArrowhead:
baseWidth = 11
baseHeight = 9
widthMultiplier = 5.5
heightMultiplier = 4.5
case d2target.FilledCircleArrowhead, d2target.CircleArrowhead:
baseWidth = 8
baseHeight = 8
widthMultiplier = 5
heightMultiplier = 5
case d2target.CfOne, d2target.CfMany, d2target.CfOneRequired, d2target.CfManyRequired:
baseWidth = 9
baseHeight = 9
widthMultiplier = 4.5
heightMultiplier = 4.5
}
clippedStrokeWidth := go2.Max(MIN_ARROWHEAD_STROKE_WIDTH, strokeWidth)
return baseWidth + clippedStrokeWidth*widthMultiplier, baseHeight + clippedStrokeWidth*heightMultiplier
}
func arrowheadMarker(isTarget bool, id string, connection d2target.Connection) string { func arrowheadMarker(isTarget bool, id string, connection d2target.Connection) string {
arrowhead := connection.DstArrow arrowhead := connection.DstArrow
if !isTarget { if !isTarget {
arrowhead = connection.SrcArrow arrowhead = connection.SrcArrow
} }
strokeWidth := float64(connection.StrokeWidth) strokeWidth := float64(connection.StrokeWidth)
width, height := arrowheadDimensions(arrowhead, strokeWidth) width, height := arrowhead.Dimensions(strokeWidth)
var path string var path string
switch arrowhead { switch arrowhead {
@ -620,38 +574,40 @@ func drawConnection(writer io.Writer, labelMaskID string, connection d2target.Co
fmt.Fprint(writer, textEl.Render()) fmt.Fprint(writer, textEl.Render())
} }
length := geo.Route(connection.Route).Length() if connection.SrcLabel != nil && connection.SrcLabel.Label != "" {
if connection.SrcLabel != "" { fmt.Fprint(writer, renderArrowheadLabel(connection, connection.SrcLabel.Label, false))
// TODO use arrowhead label dimensions https://github.com/terrastruct/d2/issues/183
size := float64(connection.FontSize)
position := 0.
if length > 0 {
position = size / length
} }
fmt.Fprint(writer, renderArrowheadLabel(connection, connection.SrcLabel, position, size, size)) if connection.DstLabel != nil && connection.DstLabel.Label != "" {
} fmt.Fprint(writer, renderArrowheadLabel(connection, connection.DstLabel.Label, true))
if connection.DstLabel != "" {
// TODO use arrowhead label dimensions https://github.com/terrastruct/d2/issues/183
size := float64(connection.FontSize)
position := 1.
if length > 0 {
position -= size / length
}
fmt.Fprint(writer, renderArrowheadLabel(connection, connection.DstLabel, position, size, size))
} }
fmt.Fprintf(writer, `</g>`) fmt.Fprintf(writer, `</g>`)
return return
} }
func renderArrowheadLabel(connection d2target.Connection, text string, position, width, height float64) string { func renderArrowheadLabel(connection d2target.Connection, text string, isDst bool) string {
labelTL := label.UnlockedTop.GetPointOnRoute(connection.Route, float64(connection.StrokeWidth), position, width, height) var width, height float64
if isDst {
width = float64(connection.DstLabel.LabelWidth)
height = float64(connection.DstLabel.LabelHeight)
} else {
width = float64(connection.SrcLabel.LabelWidth)
height = float64(connection.SrcLabel.LabelHeight)
}
labelTL := connection.GetArrowheadLabelPosition(isDst)
// svg text is positioned with the center of its baseline
baselineCenter := geo.Point{
X: labelTL.X + width/2.,
Y: labelTL.Y + float64(connection.FontSize),
}
textEl := d2themes.NewThemableElement("text") textEl := d2themes.NewThemableElement("text")
textEl.X = labelTL.X + width/2 textEl.X = baselineCenter.X
textEl.Y = labelTL.Y + float64(connection.FontSize) textEl.Y = baselineCenter.Y
textEl.Fill = d2target.FG_COLOR textEl.Fill = d2target.FG_COLOR
textEl.ClassName = "text-italic" textEl.ClassName = "text-italic"
textEl.Style = fmt.Sprintf("text-anchor:%s;font-size:%vpx", "middle", connection.FontSize) textEl.Style = fmt.Sprintf("text-anchor:middle;font-size:%vpx", connection.FontSize)
textEl.Content = RenderText(text, textEl.X, height) textEl.Content = RenderText(text, textEl.X, height)
return textEl.Render() return textEl.Render()
} }

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 61 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 62 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 102 KiB

View file

@ -29,6 +29,9 @@ const (
BG_COLOR = color.N7 BG_COLOR = color.N7
FG_COLOR = color.N1 FG_COLOR = color.N1
MIN_ARROWHEAD_STROKE_WIDTH = 2
ARROWHEAD_PADDING = 2.
) )
var BorderOffset = geo.NewVector(5, 5) var BorderOffset = geo.NewVector(5, 5)
@ -232,6 +235,20 @@ func (diagram Diagram) BoundingBox() (topLeft, bottomRight Point) {
x2 = go2.Max(x2, int(labelTL.X)+connection.LabelWidth) x2 = go2.Max(x2, int(labelTL.X)+connection.LabelWidth)
y2 = go2.Max(y2, int(labelTL.Y)+connection.LabelHeight) y2 = go2.Max(y2, int(labelTL.Y)+connection.LabelHeight)
} }
if connection.SrcLabel != nil && connection.SrcLabel.Label != "" {
labelTL := connection.GetArrowheadLabelPosition(false)
x1 = go2.Min(x1, int(labelTL.X))
y1 = go2.Min(y1, int(labelTL.Y))
x2 = go2.Max(x2, int(labelTL.X)+connection.SrcLabel.LabelWidth)
y2 = go2.Max(y2, int(labelTL.Y)+connection.SrcLabel.LabelHeight)
}
if connection.DstLabel != nil && connection.DstLabel.Label != "" {
labelTL := connection.GetArrowheadLabelPosition(true)
x1 = go2.Min(x1, int(labelTL.X))
y1 = go2.Min(y1, int(labelTL.Y))
x2 = go2.Max(x2, int(labelTL.X)+connection.DstLabel.LabelWidth)
y2 = go2.Max(y2, int(labelTL.Y)+connection.DstLabel.LabelHeight)
}
} }
return Point{x1, y1}, Point{x2, y2} return Point{x1, y1}, Point{x2, y2}
@ -286,8 +303,12 @@ func (diagram Diagram) GetCorpus() string {
} }
for _, c := range diagram.Connections { for _, c := range diagram.Connections {
corpus += c.Label corpus += c.Label
corpus += c.SrcLabel if c.SrcLabel != nil {
corpus += c.DstLabel corpus += c.SrcLabel.Label
}
if c.DstLabel != nil {
corpus += c.DstLabel.Label
}
} }
return corpus return corpus
@ -431,11 +452,11 @@ type Connection struct {
Src string `json:"src"` Src string `json:"src"`
SrcArrow Arrowhead `json:"srcArrow"` SrcArrow Arrowhead `json:"srcArrow"`
SrcLabel string `json:"srcLabel"` SrcLabel *Text `json:"srcLabel,omitempty"`
Dst string `json:"dst"` Dst string `json:"dst"`
DstArrow Arrowhead `json:"dstArrow"` DstArrow Arrowhead `json:"dstArrow"`
DstLabel string `json:"dstLabel"` DstLabel *Text `json:"dstLabel,omitempty"`
Opacity float64 `json:"opacity"` Opacity float64 `json:"opacity"`
StrokeDash float64 `json:"strokeDash"` StrokeDash float64 `json:"strokeDash"`
@ -506,13 +527,85 @@ func (c Connection) CSSStyle() string {
} }
func (c *Connection) GetLabelTopLeft() *geo.Point { func (c *Connection) GetLabelTopLeft() *geo.Point {
return label.Position(c.LabelPosition).GetPointOnRoute( point, _ := label.Position(c.LabelPosition).GetPointOnRoute(
c.Route, c.Route,
float64(c.StrokeWidth), float64(c.StrokeWidth),
c.LabelPercentage, c.LabelPercentage,
float64(c.LabelWidth), float64(c.LabelWidth),
float64(c.LabelHeight), float64(c.LabelHeight),
) )
return point
}
func (connection *Connection) GetArrowheadLabelPosition(isDst bool) *geo.Point {
var width, height float64
if isDst {
width = float64(connection.DstLabel.LabelWidth)
height = float64(connection.DstLabel.LabelHeight)
} else {
width = float64(connection.SrcLabel.LabelWidth)
height = float64(connection.SrcLabel.LabelHeight)
}
// get the start/end points of edge segment with arrowhead
index := 0
if isDst {
index = len(connection.Route) - 2
}
start, end := connection.Route[index], connection.Route[index+1]
// how much to move the label back from the very end of the edge
var shift float64
if start.Y == end.Y {
// shift left/right to fit on horizontal segment
shift = width/2. + label.PADDING
} else if start.X == end.X {
// shift up/down to fit on vertical segment
shift = height/2. + label.PADDING
} else {
// TODO compute amount to shift according to angle instead of max
shift = math.Max(width, height)
}
length := geo.Route(connection.Route).Length()
var position float64
if isDst {
position = 1.
if length > 0 {
position -= shift / length
}
} else {
position = 0.
if length > 0 {
position = shift / length
}
}
strokeWidth := float64(connection.StrokeWidth)
labelTL, index := label.UnlockedTop.GetPointOnRoute(connection.Route, strokeWidth, position, width, height)
var arrowSize float64
if isDst && connection.DstArrow != NoArrowhead {
// Note: these dimensions are for rendering arrowheads on their side so we want the height
_, arrowSize = connection.DstArrow.Dimensions(strokeWidth)
} else if connection.SrcArrow != NoArrowhead {
_, arrowSize = connection.SrcArrow.Dimensions(strokeWidth)
}
if arrowSize > 0 {
// labelTL already accounts for strokeWidth and padding, we only want to shift further if the arrow is larger than this
offset := (arrowSize/2 + ARROWHEAD_PADDING) - strokeWidth/2 - label.PADDING
if offset > 0 {
start, end = connection.Route[index], connection.Route[index+1]
// Note: end to start to get normal towards unlocked top position
normalX, normalY := geo.GetUnitNormalVector(end.X, end.Y, start.X, start.Y)
labelTL.X += normalX * offset
labelTL.Y += normalY * offset
}
}
return labelTL
} }
func (c Connection) GetZIndex() int { func (c Connection) GetZIndex() int {
@ -585,6 +678,49 @@ func ToArrowhead(arrowheadType string, filled bool) Arrowhead {
} }
} }
func (arrowhead Arrowhead) Dimensions(strokeWidth float64) (width, height float64) {
var baseWidth, baseHeight float64
var widthMultiplier, heightMultiplier float64
switch arrowhead {
case ArrowArrowhead:
baseWidth = 4
baseHeight = 4
widthMultiplier = 4
heightMultiplier = 4
case TriangleArrowhead:
baseWidth = 4
baseHeight = 4
widthMultiplier = 3
heightMultiplier = 4
case LineArrowhead:
widthMultiplier = 5
heightMultiplier = 8
case FilledDiamondArrowhead:
baseWidth = 11
baseHeight = 7
widthMultiplier = 5.5
heightMultiplier = 3.5
case DiamondArrowhead:
baseWidth = 11
baseHeight = 9
widthMultiplier = 5.5
heightMultiplier = 4.5
case FilledCircleArrowhead, CircleArrowhead:
baseWidth = 8
baseHeight = 8
widthMultiplier = 5
heightMultiplier = 5
case CfOne, CfMany, CfOneRequired, CfManyRequired:
baseWidth = 9
baseHeight = 9
widthMultiplier = 4.5
heightMultiplier = 4.5
}
clippedStrokeWidth := go2.Max(MIN_ARROWHEAD_STROKE_WIDTH, strokeWidth)
return baseWidth + clippedStrokeWidth*widthMultiplier, baseHeight + clippedStrokeWidth*heightMultiplier
}
type Point struct { type Point struct {
X int `json:"x"` X int `json:"x"`
Y int `json:"y"` Y int `json:"y"`

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-2448830429" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-855222762" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-2448830429 .text-bold { .d2-855222762 .text-bold {
font-family: "d2-2448830429-font-bold"; font-family: "d2-855222762-font-bold";
} }
@font-face { @font-face {
font-family: d2-2448830429-font-bold; font-family: d2-855222762-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-2448830429 .fill-N1{fill:#0A0F25;} .d2-855222762 .fill-N1{fill:#0A0F25;}
.d2-2448830429 .fill-N2{fill:#676C7E;} .d2-855222762 .fill-N2{fill:#676C7E;}
.d2-2448830429 .fill-N3{fill:#9499AB;} .d2-855222762 .fill-N3{fill:#9499AB;}
.d2-2448830429 .fill-N4{fill:#CFD2DD;} .d2-855222762 .fill-N4{fill:#CFD2DD;}
.d2-2448830429 .fill-N5{fill:#DEE1EB;} .d2-855222762 .fill-N5{fill:#DEE1EB;}
.d2-2448830429 .fill-N6{fill:#EEF1F8;} .d2-855222762 .fill-N6{fill:#EEF1F8;}
.d2-2448830429 .fill-N7{fill:#FFFFFF;} .d2-855222762 .fill-N7{fill:#FFFFFF;}
.d2-2448830429 .fill-B1{fill:#0D32B2;} .d2-855222762 .fill-B1{fill:#0D32B2;}
.d2-2448830429 .fill-B2{fill:#0D32B2;} .d2-855222762 .fill-B2{fill:#0D32B2;}
.d2-2448830429 .fill-B3{fill:#E3E9FD;} .d2-855222762 .fill-B3{fill:#E3E9FD;}
.d2-2448830429 .fill-B4{fill:#E3E9FD;} .d2-855222762 .fill-B4{fill:#E3E9FD;}
.d2-2448830429 .fill-B5{fill:#EDF0FD;} .d2-855222762 .fill-B5{fill:#EDF0FD;}
.d2-2448830429 .fill-B6{fill:#F7F8FE;} .d2-855222762 .fill-B6{fill:#F7F8FE;}
.d2-2448830429 .fill-AA2{fill:#4A6FF3;} .d2-855222762 .fill-AA2{fill:#4A6FF3;}
.d2-2448830429 .fill-AA4{fill:#EDF0FD;} .d2-855222762 .fill-AA4{fill:#EDF0FD;}
.d2-2448830429 .fill-AA5{fill:#F7F8FE;} .d2-855222762 .fill-AA5{fill:#F7F8FE;}
.d2-2448830429 .fill-AB4{fill:#EDF0FD;} .d2-855222762 .fill-AB4{fill:#EDF0FD;}
.d2-2448830429 .fill-AB5{fill:#F7F8FE;} .d2-855222762 .fill-AB5{fill:#F7F8FE;}
.d2-2448830429 .stroke-N1{stroke:#0A0F25;} .d2-855222762 .stroke-N1{stroke:#0A0F25;}
.d2-2448830429 .stroke-N2{stroke:#676C7E;} .d2-855222762 .stroke-N2{stroke:#676C7E;}
.d2-2448830429 .stroke-N3{stroke:#9499AB;} .d2-855222762 .stroke-N3{stroke:#9499AB;}
.d2-2448830429 .stroke-N4{stroke:#CFD2DD;} .d2-855222762 .stroke-N4{stroke:#CFD2DD;}
.d2-2448830429 .stroke-N5{stroke:#DEE1EB;} .d2-855222762 .stroke-N5{stroke:#DEE1EB;}
.d2-2448830429 .stroke-N6{stroke:#EEF1F8;} .d2-855222762 .stroke-N6{stroke:#EEF1F8;}
.d2-2448830429 .stroke-N7{stroke:#FFFFFF;} .d2-855222762 .stroke-N7{stroke:#FFFFFF;}
.d2-2448830429 .stroke-B1{stroke:#0D32B2;} .d2-855222762 .stroke-B1{stroke:#0D32B2;}
.d2-2448830429 .stroke-B2{stroke:#0D32B2;} .d2-855222762 .stroke-B2{stroke:#0D32B2;}
.d2-2448830429 .stroke-B3{stroke:#E3E9FD;} .d2-855222762 .stroke-B3{stroke:#E3E9FD;}
.d2-2448830429 .stroke-B4{stroke:#E3E9FD;} .d2-855222762 .stroke-B4{stroke:#E3E9FD;}
.d2-2448830429 .stroke-B5{stroke:#EDF0FD;} .d2-855222762 .stroke-B5{stroke:#EDF0FD;}
.d2-2448830429 .stroke-B6{stroke:#F7F8FE;} .d2-855222762 .stroke-B6{stroke:#F7F8FE;}
.d2-2448830429 .stroke-AA2{stroke:#4A6FF3;} .d2-855222762 .stroke-AA2{stroke:#4A6FF3;}
.d2-2448830429 .stroke-AA4{stroke:#EDF0FD;} .d2-855222762 .stroke-AA4{stroke:#EDF0FD;}
.d2-2448830429 .stroke-AA5{stroke:#F7F8FE;} .d2-855222762 .stroke-AA5{stroke:#F7F8FE;}
.d2-2448830429 .stroke-AB4{stroke:#EDF0FD;} .d2-855222762 .stroke-AB4{stroke:#EDF0FD;}
.d2-2448830429 .stroke-AB5{stroke:#F7F8FE;} .d2-855222762 .stroke-AB5{stroke:#F7F8FE;}
.d2-2448830429 .background-color-N1{background-color:#0A0F25;} .d2-855222762 .background-color-N1{background-color:#0A0F25;}
.d2-2448830429 .background-color-N2{background-color:#676C7E;} .d2-855222762 .background-color-N2{background-color:#676C7E;}
.d2-2448830429 .background-color-N3{background-color:#9499AB;} .d2-855222762 .background-color-N3{background-color:#9499AB;}
.d2-2448830429 .background-color-N4{background-color:#CFD2DD;} .d2-855222762 .background-color-N4{background-color:#CFD2DD;}
.d2-2448830429 .background-color-N5{background-color:#DEE1EB;} .d2-855222762 .background-color-N5{background-color:#DEE1EB;}
.d2-2448830429 .background-color-N6{background-color:#EEF1F8;} .d2-855222762 .background-color-N6{background-color:#EEF1F8;}
.d2-2448830429 .background-color-N7{background-color:#FFFFFF;} .d2-855222762 .background-color-N7{background-color:#FFFFFF;}
.d2-2448830429 .background-color-B1{background-color:#0D32B2;} .d2-855222762 .background-color-B1{background-color:#0D32B2;}
.d2-2448830429 .background-color-B2{background-color:#0D32B2;} .d2-855222762 .background-color-B2{background-color:#0D32B2;}
.d2-2448830429 .background-color-B3{background-color:#E3E9FD;} .d2-855222762 .background-color-B3{background-color:#E3E9FD;}
.d2-2448830429 .background-color-B4{background-color:#E3E9FD;} .d2-855222762 .background-color-B4{background-color:#E3E9FD;}
.d2-2448830429 .background-color-B5{background-color:#EDF0FD;} .d2-855222762 .background-color-B5{background-color:#EDF0FD;}
.d2-2448830429 .background-color-B6{background-color:#F7F8FE;} .d2-855222762 .background-color-B6{background-color:#F7F8FE;}
.d2-2448830429 .background-color-AA2{background-color:#4A6FF3;} .d2-855222762 .background-color-AA2{background-color:#4A6FF3;}
.d2-2448830429 .background-color-AA4{background-color:#EDF0FD;} .d2-855222762 .background-color-AA4{background-color:#EDF0FD;}
.d2-2448830429 .background-color-AA5{background-color:#F7F8FE;} .d2-855222762 .background-color-AA5{background-color:#F7F8FE;}
.d2-2448830429 .background-color-AB4{background-color:#EDF0FD;} .d2-855222762 .background-color-AB4{background-color:#EDF0FD;}
.d2-2448830429 .background-color-AB5{background-color:#F7F8FE;} .d2-855222762 .background-color-AB5{background-color:#F7F8FE;}
.d2-2448830429 .color-N1{color:#0A0F25;} .d2-855222762 .color-N1{color:#0A0F25;}
.d2-2448830429 .color-N2{color:#676C7E;} .d2-855222762 .color-N2{color:#676C7E;}
.d2-2448830429 .color-N3{color:#9499AB;} .d2-855222762 .color-N3{color:#9499AB;}
.d2-2448830429 .color-N4{color:#CFD2DD;} .d2-855222762 .color-N4{color:#CFD2DD;}
.d2-2448830429 .color-N5{color:#DEE1EB;} .d2-855222762 .color-N5{color:#DEE1EB;}
.d2-2448830429 .color-N6{color:#EEF1F8;} .d2-855222762 .color-N6{color:#EEF1F8;}
.d2-2448830429 .color-N7{color:#FFFFFF;} .d2-855222762 .color-N7{color:#FFFFFF;}
.d2-2448830429 .color-B1{color:#0D32B2;} .d2-855222762 .color-B1{color:#0D32B2;}
.d2-2448830429 .color-B2{color:#0D32B2;} .d2-855222762 .color-B2{color:#0D32B2;}
.d2-2448830429 .color-B3{color:#E3E9FD;} .d2-855222762 .color-B3{color:#E3E9FD;}
.d2-2448830429 .color-B4{color:#E3E9FD;} .d2-855222762 .color-B4{color:#E3E9FD;}
.d2-2448830429 .color-B5{color:#EDF0FD;} .d2-855222762 .color-B5{color:#EDF0FD;}
.d2-2448830429 .color-B6{color:#F7F8FE;} .d2-855222762 .color-B6{color:#F7F8FE;}
.d2-2448830429 .color-AA2{color:#4A6FF3;} .d2-855222762 .color-AA2{color:#4A6FF3;}
.d2-2448830429 .color-AA4{color:#EDF0FD;} .d2-855222762 .color-AA4{color:#EDF0FD;}
.d2-2448830429 .color-AA5{color:#F7F8FE;} .d2-855222762 .color-AA5{color:#F7F8FE;}
.d2-2448830429 .color-AB4{color:#EDF0FD;} .d2-855222762 .color-AB4{color:#EDF0FD;}
.d2-2448830429 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2448830429)" /></g><mask id="d2-2448830429" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434"> .d2-855222762 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-855222762)" /></g><mask id="d2-855222762" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434">
<rect x="-101" y="-101" width="256" height="434" fill="white"></rect> <rect x="-101" y="-101" width="256" height="434" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View file

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 514 665"><svg id="d2-svg" width="514" height="665" viewBox="-206 -166 514 665"><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 514 665"><svg id="d2-svg" width="514" height="665" viewBox="-206 -166 514 665"><style type="text/css"><![CDATA[
.d2-3751819762 .text { .d2-508224771 .text {
font-family: "d2-3751819762-font-regular"; font-family: "d2-508224771-font-regular";
} }
@font-face { @font-face {
font-family: d2-3751819762-font-regular; font-family: d2-508224771-font-regular;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
} }
.d2-3751819762 .text-bold { .d2-508224771 .text-bold {
font-family: "d2-3751819762-font-bold"; font-family: "d2-508224771-font-bold";
} }
@font-face { @font-face {
font-family: d2-3751819762-font-bold; font-family: d2-508224771-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,d09GRgABAAAAAAusAAoAAAAAEggAAguFAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgXxHXrmNtYXAAAAFUAAAAkQAAAMADlQPeZ2x5ZgAAAegAAAVpAAAG4Mx7UqRoZWFkAAAHVAAAADYAAAA2G38e1GhoZWEAAAeMAAAAJAAAACQKfwXXaG10eAAAB7AAAABgAAAAYC0lA+5sb2NhAAAIEAAAADIAAAAyFv4VQm1heHAAAAhEAAAAIAAAACAAMAD3bmFtZQAACGQAAAMoAAAIKgjwVkFwb3N0AAALjAAAAB0AAAAg/9EAMgADAioCvAAFAAACigJYAAAASwKKAlgAAAFeADIBKQAAAgsHAwMEAwICBGAAAvcAAAADAAAAAAAAAABBREJPACAAIP//Au7/BgAAA9gBESAAAZ8AAAAAAfAClAAAACAAA3icfM1NSgIBAIbhZ5rpf5qmv2206xzRukNEBEURUUR0lkod9A5u9ShewCt8guDCje/2WbwolArUKh0utUqNK9du3Lpz79GzV+8+ffn2k7DmD568ePOx8swyzzSTjDPKMF0G6aeX//zld3nbVOHCllJl245de/YdOFQ70jjWOnHqzDkLAAAA//8BAAD//y9UJ1sAAAB4nFyUW2wbWRnHv3M8nhM7TpzxeGZsx/cTz9i5OI3H9jTNxXVuTrrOXUl22SZZohW7q7RJ1U3ZsELaF7qC3VQVOEiFAC0SSCC1lSpeoCggkGiRmre29IVLESivtVCEaOWM0dhuk/bBsh+s7/v//v//+cAMUwB4BW+DCSxgBwcIACoX4iKqolCiqZpGJZOmII5MYYf+858pMSYWY1qD1wKfLi+j8SW8fXju3fGVlf8u9/ToP/nNXf0K+vguAC6/AMCDeAsswAHwRFVkWaEsa+JVniqU7Dd9aW9obmBs7hd7d/Z+FL0fRWd6e7vW1OR5/TLeOtzY2QEAQBAvH+AT+Bo0A5jDspxKptNqQpSILNMwywpOUU2kNYlFizNfzM5dmcm8H5pwa7R9rG1+NJpxTczY8t8/f+4H02p4SfIllgbev9DiPvseIBgHwLfwFgQMXpUXRUlNpzVe5aixQqOEUEWhfiwI4z/9yOqwMlbO+sGNz4nFxKQWpxeTDFNH8Jb+d2+/39/vReHDjWfByanAzvPnO4GpyeAzAAyt5QP0CJXADRRAChvitYpuolQoBI4anmiJtJaqsPxuaOpbBUxjgdMtqc7VU8tf27QygVydO8JP9AZsC5mJt+0hxSV81deydlH/t+qlFyV+wdrmc0kVr1rKB2gXlcDzplc0fOQUi9zD69nRrw/Fc95hGkxlMidccf5UZN7Wd2lmdqPPLy378tnT44L9vWCzkQEGpXyASngXeAi+5KgMVlLqMQK5tuY/Z9d7lpOxk262sGllPCPYpTj4NidNd9q+/Mb0pX6vK//Lw8EuD910uh84GgdzY8OAK9r/iUrgMhI5pl4UnCwJiaKaMLSb1KSxBQVyFwcGz/XkFjsZrD+xjnSl0l3y0g9/pbSH07b+jZnpjUxmdYiPWNJq6B2PH52KpTqrfcoaQHgXnJXcBfIyCK4ymHDZAvG+lZgeK/iC3qgL7958x922uqjvoVA66pb0O1AugwYAf8MPsQwiABCQ4ItXs/14F2yV2ZyqqYSnChGyV5kf37j92+sXMnhXX/vTnv7XP+Q+Nf5fPkAOvAv2qqucyr0K6c/5ngJnMRPWYYvY3n0L08MnkgOh82bykgGVagxGcd9g2LQywfFXEKiY8Xe8xlD1GxNUAvsbL8vwm1US6VSyFicSM+tDQ+uZzNrQ0FqmIx7viHd01LrStzE7c6nvk/HT2bxRGWNutjyKRVQCHvwA0pE6J8vSsKxIAm/MpmEiiKKh0zemfOXD3uV0sNdjnpTT822tzuiv8S+6PPQ7H89tZprdk99FLSP5zzseOBprHqOrqASO4+y1c1Alb87LgtfqanA3efucqLiQ6DKbP2OYWEJ/CgiE8gG6jkqgVDxXNKNZBqysxHEqeTRMcIqSHwtO9mHXB/JAOBMI+X1xj78n+tFc90JgwJP0dHfLwb7YhzY5cNbdLPGcyFttLd2x4XnF9bZTVFzuxnraHR9crPaut3yA/oeKRmavZc3VntBfpscK/qBXFgub9abAGdvqIkrq/0jFPD40qjcNR9oBgQsAF1ERQgCqSZVqN0s79stEa3eWkO1vfu8Ea2UZ0mDRPjtpsROGWEjntz+52UEaCEPqSTsq7kdGZfkM3a98j0b29aZ7dCQaHaH3Kppt5X50iIpGQ4680rTjq02NeFMM2T3EUReJWsnvt3P1DitTx1l6r9yUTk7+kWUuIHOLz4P+9Tg8EqE5+liv759rrXqSRyvwFN8GMwCvKCohaz7zttmHVu5fvny/mjU8QkUwVd9TtoCKehOg8i3cDbP4IdQDcJVrVC1YJB6PROJx3N1Kaavxgf8DAAD//wEAAP//VmN0NQAAAAABAAAAAguFYS7IJ18PPPUAAQPoAAAAANhdoIQAAAAA3WYvNv43/sQIbQPxAAEAAwACAAAAAAAAAAEAAAPY/u8AAAiY/jf+NwhtAAEAAAAAAAAAAAAAAAAAAAAYArIAUADIAAACPf/6AkYALgL6AE0CDwAqAdMAJAI9ACcCBgAkAjsAQQEUADcCJABBAR4AQQI8AEECKwAkAj0AQQGOAEEBuwAVAjgAPAMIABgCCQAMASwATAEUAEEAAP+tAAAALAAsAFAAfACuAOYBEgFEAXgBmgGmAb4B2gH8AigCWAJ4ArQC1gMOAz4DTgNaA3AAAAABAAAAGACQAAwAYwAHAAEAAAAAAAAAAAAAAAAABAADeJyclM9uG1UUxn9ObNMKwQJFVbqJ7oJFkejYVEnVNiuH1IpFFAePC0JCSBPP+I8ynhl5Jg7hCVjzFrxFVzwEz4FYo/l87NgF0SaKknx37vnznXO+c4Ed/mabSvUh8Ec9MVxhr35ueIsH9RPD27TrW4arPKn9abhGWJsbrvN5rWf4I95WfzP8gP3qT4YfslttG/6YZ9Udw59sO/4y/Cn7vF3gCrzgV8MVdskMb7HDj4a3eYTFrFR5RNNwjc/YM1xnD+gzoSBmQsIIx5AJI66YEZHjEzFjwpCIEEeHFjGFviYEQo7Rf34N8CmYESjimAJHjE9MQM7YIv4ir5RzZRzqNLO7FgVjAi7kcUlAgiNlREpCxKXiFBRkvKJBg5yB+GYU5HjkTIjxSJkxokGXNqf0GTMhx9FWpJKZT8qQgmsC5XdmUXZmQERCbqyuSAjF04lfJO8Opzi6ZLJdj3y6EeFLHN/Ju+SWyvYrPP26NWabeZdsAubqZ6yuxLq51gTHui3ztvhWuOAV7l792WTy/h6F+l8o8gVXmn+oSSVikuDcLi18Kch3j3Ec6dzBV0e+p0OfE7q8oa9zix49WpzRp8Nr+Xbp4fiaLmccy6MjvLhrSzFn/IDjGzqyKWNH1p/FxCJ+JjN15+I4Ux1TMvW8ZO6p1kgV3n3C5Q6lG+rI5TPQHpWWTvNLtGcBI1NFJoZT9XKpjdz6F5oipqqlnO3tfbkNc9u95RbfkGqHS7UuOJWTWzB631S9dzRzrR+PgJCUC1kMSJnSoOBGvM8JuCLGcazunWhLClornzLPjVQSMRWDDonizMj0NzDd+MZ9sKF7Z29JKP+S6eWqqvtkcerV7YzeqHvLO9+6HK1NoGFTTdfUNBDXxLQfaafW+fvyzfW6pTzliJSY8F8vwDM8muxzwCFjZRjoZm6vQ1MvRJOXHKr6SyJZDaXnyCIc4PGcAw54yfN3+rhk4oyLW3FZz93imCO6HH5QFQv7Lke8Xn37/6y/i2lTtTierk4v7j3FJ3dQ6xfas9v3sqeJlZOYW7TbrTgjYFpycbvrNbnHeP8AAAD//wEAAP//9LdPUXicYmBmAIP/5xiMGLAAAAAAAP//AQAA//8vAQIDAAAA");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -25,92 +25,92 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-3751819762 .fill-N1{fill:#0A0F25;} .d2-508224771 .fill-N1{fill:#0A0F25;}
.d2-3751819762 .fill-N2{fill:#676C7E;} .d2-508224771 .fill-N2{fill:#676C7E;}
.d2-3751819762 .fill-N3{fill:#9499AB;} .d2-508224771 .fill-N3{fill:#9499AB;}
.d2-3751819762 .fill-N4{fill:#CFD2DD;} .d2-508224771 .fill-N4{fill:#CFD2DD;}
.d2-3751819762 .fill-N5{fill:#DEE1EB;} .d2-508224771 .fill-N5{fill:#DEE1EB;}
.d2-3751819762 .fill-N6{fill:#EEF1F8;} .d2-508224771 .fill-N6{fill:#EEF1F8;}
.d2-3751819762 .fill-N7{fill:#FFFFFF;} .d2-508224771 .fill-N7{fill:#FFFFFF;}
.d2-3751819762 .fill-B1{fill:#0D32B2;} .d2-508224771 .fill-B1{fill:#0D32B2;}
.d2-3751819762 .fill-B2{fill:#0D32B2;} .d2-508224771 .fill-B2{fill:#0D32B2;}
.d2-3751819762 .fill-B3{fill:#E3E9FD;} .d2-508224771 .fill-B3{fill:#E3E9FD;}
.d2-3751819762 .fill-B4{fill:#E3E9FD;} .d2-508224771 .fill-B4{fill:#E3E9FD;}
.d2-3751819762 .fill-B5{fill:#EDF0FD;} .d2-508224771 .fill-B5{fill:#EDF0FD;}
.d2-3751819762 .fill-B6{fill:#F7F8FE;} .d2-508224771 .fill-B6{fill:#F7F8FE;}
.d2-3751819762 .fill-AA2{fill:#4A6FF3;} .d2-508224771 .fill-AA2{fill:#4A6FF3;}
.d2-3751819762 .fill-AA4{fill:#EDF0FD;} .d2-508224771 .fill-AA4{fill:#EDF0FD;}
.d2-3751819762 .fill-AA5{fill:#F7F8FE;} .d2-508224771 .fill-AA5{fill:#F7F8FE;}
.d2-3751819762 .fill-AB4{fill:#EDF0FD;} .d2-508224771 .fill-AB4{fill:#EDF0FD;}
.d2-3751819762 .fill-AB5{fill:#F7F8FE;} .d2-508224771 .fill-AB5{fill:#F7F8FE;}
.d2-3751819762 .stroke-N1{stroke:#0A0F25;} .d2-508224771 .stroke-N1{stroke:#0A0F25;}
.d2-3751819762 .stroke-N2{stroke:#676C7E;} .d2-508224771 .stroke-N2{stroke:#676C7E;}
.d2-3751819762 .stroke-N3{stroke:#9499AB;} .d2-508224771 .stroke-N3{stroke:#9499AB;}
.d2-3751819762 .stroke-N4{stroke:#CFD2DD;} .d2-508224771 .stroke-N4{stroke:#CFD2DD;}
.d2-3751819762 .stroke-N5{stroke:#DEE1EB;} .d2-508224771 .stroke-N5{stroke:#DEE1EB;}
.d2-3751819762 .stroke-N6{stroke:#EEF1F8;} .d2-508224771 .stroke-N6{stroke:#EEF1F8;}
.d2-3751819762 .stroke-N7{stroke:#FFFFFF;} .d2-508224771 .stroke-N7{stroke:#FFFFFF;}
.d2-3751819762 .stroke-B1{stroke:#0D32B2;} .d2-508224771 .stroke-B1{stroke:#0D32B2;}
.d2-3751819762 .stroke-B2{stroke:#0D32B2;} .d2-508224771 .stroke-B2{stroke:#0D32B2;}
.d2-3751819762 .stroke-B3{stroke:#E3E9FD;} .d2-508224771 .stroke-B3{stroke:#E3E9FD;}
.d2-3751819762 .stroke-B4{stroke:#E3E9FD;} .d2-508224771 .stroke-B4{stroke:#E3E9FD;}
.d2-3751819762 .stroke-B5{stroke:#EDF0FD;} .d2-508224771 .stroke-B5{stroke:#EDF0FD;}
.d2-3751819762 .stroke-B6{stroke:#F7F8FE;} .d2-508224771 .stroke-B6{stroke:#F7F8FE;}
.d2-3751819762 .stroke-AA2{stroke:#4A6FF3;} .d2-508224771 .stroke-AA2{stroke:#4A6FF3;}
.d2-3751819762 .stroke-AA4{stroke:#EDF0FD;} .d2-508224771 .stroke-AA4{stroke:#EDF0FD;}
.d2-3751819762 .stroke-AA5{stroke:#F7F8FE;} .d2-508224771 .stroke-AA5{stroke:#F7F8FE;}
.d2-3751819762 .stroke-AB4{stroke:#EDF0FD;} .d2-508224771 .stroke-AB4{stroke:#EDF0FD;}
.d2-3751819762 .stroke-AB5{stroke:#F7F8FE;} .d2-508224771 .stroke-AB5{stroke:#F7F8FE;}
.d2-3751819762 .background-color-N1{background-color:#0A0F25;} .d2-508224771 .background-color-N1{background-color:#0A0F25;}
.d2-3751819762 .background-color-N2{background-color:#676C7E;} .d2-508224771 .background-color-N2{background-color:#676C7E;}
.d2-3751819762 .background-color-N3{background-color:#9499AB;} .d2-508224771 .background-color-N3{background-color:#9499AB;}
.d2-3751819762 .background-color-N4{background-color:#CFD2DD;} .d2-508224771 .background-color-N4{background-color:#CFD2DD;}
.d2-3751819762 .background-color-N5{background-color:#DEE1EB;} .d2-508224771 .background-color-N5{background-color:#DEE1EB;}
.d2-3751819762 .background-color-N6{background-color:#EEF1F8;} .d2-508224771 .background-color-N6{background-color:#EEF1F8;}
.d2-3751819762 .background-color-N7{background-color:#FFFFFF;} .d2-508224771 .background-color-N7{background-color:#FFFFFF;}
.d2-3751819762 .background-color-B1{background-color:#0D32B2;} .d2-508224771 .background-color-B1{background-color:#0D32B2;}
.d2-3751819762 .background-color-B2{background-color:#0D32B2;} .d2-508224771 .background-color-B2{background-color:#0D32B2;}
.d2-3751819762 .background-color-B3{background-color:#E3E9FD;} .d2-508224771 .background-color-B3{background-color:#E3E9FD;}
.d2-3751819762 .background-color-B4{background-color:#E3E9FD;} .d2-508224771 .background-color-B4{background-color:#E3E9FD;}
.d2-3751819762 .background-color-B5{background-color:#EDF0FD;} .d2-508224771 .background-color-B5{background-color:#EDF0FD;}
.d2-3751819762 .background-color-B6{background-color:#F7F8FE;} .d2-508224771 .background-color-B6{background-color:#F7F8FE;}
.d2-3751819762 .background-color-AA2{background-color:#4A6FF3;} .d2-508224771 .background-color-AA2{background-color:#4A6FF3;}
.d2-3751819762 .background-color-AA4{background-color:#EDF0FD;} .d2-508224771 .background-color-AA4{background-color:#EDF0FD;}
.d2-3751819762 .background-color-AA5{background-color:#F7F8FE;} .d2-508224771 .background-color-AA5{background-color:#F7F8FE;}
.d2-3751819762 .background-color-AB4{background-color:#EDF0FD;} .d2-508224771 .background-color-AB4{background-color:#EDF0FD;}
.d2-3751819762 .background-color-AB5{background-color:#F7F8FE;} .d2-508224771 .background-color-AB5{background-color:#F7F8FE;}
.d2-3751819762 .color-N1{color:#0A0F25;} .d2-508224771 .color-N1{color:#0A0F25;}
.d2-3751819762 .color-N2{color:#676C7E;} .d2-508224771 .color-N2{color:#676C7E;}
.d2-3751819762 .color-N3{color:#9499AB;} .d2-508224771 .color-N3{color:#9499AB;}
.d2-3751819762 .color-N4{color:#CFD2DD;} .d2-508224771 .color-N4{color:#CFD2DD;}
.d2-3751819762 .color-N5{color:#DEE1EB;} .d2-508224771 .color-N5{color:#DEE1EB;}
.d2-3751819762 .color-N6{color:#EEF1F8;} .d2-508224771 .color-N6{color:#EEF1F8;}
.d2-3751819762 .color-N7{color:#FFFFFF;} .d2-508224771 .color-N7{color:#FFFFFF;}
.d2-3751819762 .color-B1{color:#0D32B2;} .d2-508224771 .color-B1{color:#0D32B2;}
.d2-3751819762 .color-B2{color:#0D32B2;} .d2-508224771 .color-B2{color:#0D32B2;}
.d2-3751819762 .color-B3{color:#E3E9FD;} .d2-508224771 .color-B3{color:#E3E9FD;}
.d2-3751819762 .color-B4{color:#E3E9FD;} .d2-508224771 .color-B4{color:#E3E9FD;}
.d2-3751819762 .color-B5{color:#EDF0FD;} .d2-508224771 .color-B5{color:#EDF0FD;}
.d2-3751819762 .color-B6{color:#F7F8FE;} .d2-508224771 .color-B6{color:#F7F8FE;}
.d2-3751819762 .color-AA2{color:#4A6FF3;} .d2-508224771 .color-AA2{color:#4A6FF3;}
.d2-3751819762 .color-AA4{color:#EDF0FD;} .d2-508224771 .color-AA4{color:#EDF0FD;}
.d2-3751819762 .color-AA5{color:#F7F8FE;} .d2-508224771 .color-AA5{color:#F7F8FE;}
.d2-3751819762 .color-AB4{color:#EDF0FD;} .d2-508224771 .color-AB4{color:#EDF0FD;}
.d2-3751819762 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css">.md em, .d2-508224771 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css">.md em,
.md dfn { .md dfn {
font-family: "d2-3751819762-font-italic"; font-family: "d2-508224771-font-italic";
} }
.md b, .md b,
.md strong { .md strong {
font-family: "d2-3751819762-font-bold"; font-family: "d2-508224771-font-bold";
} }
.md code, .md code,
.md kbd, .md kbd,
.md pre, .md pre,
.md samp { .md samp {
font-family: "d2-3751819762-font-mono"; font-family: "d2-508224771-font-mono";
font-size: 1em; font-size: 1em;
} }
@ -126,7 +126,7 @@
margin: 0; margin: 0;
color: var(--color-fg-default); color: var(--color-fg-default);
background-color: transparent; /* we don't want to define the background color */ background-color: transparent; /* we don't want to define the background color */
font-family: "d2-3751819762-font-regular"; font-family: "d2-508224771-font-regular";
font-size: 16px; font-size: 16px;
line-height: 1.5; line-height: 1.5;
word-wrap: break-word; word-wrap: break-word;
@ -832,7 +832,7 @@
.md .contains-task-list:dir(rtl) .task-list-item-checkbox { .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em; margin: 0 -1.6em 0.25em 0.2em;
} }
</style><style type="text/css"><![CDATA[@keyframes d2Transition-d2-3751819762-0 { </style><style type="text/css"><![CDATA[@keyframes d2Transition-d2-508224771-0 {
0%, 0.000000% { 0%, 0.000000% {
opacity: 0; opacity: 0;
} }
@ -842,7 +842,7 @@
25.000000%, 100% { 25.000000%, 100% {
opacity: 0; opacity: 0;
} }
}@keyframes d2Transition-d2-3751819762-1 { }@keyframes d2Transition-d2-508224771-1 {
0%, 24.982143% { 0%, 24.982143% {
opacity: 0; opacity: 0;
} }
@ -852,7 +852,7 @@
50.000000%, 100% { 50.000000%, 100% {
opacity: 0; opacity: 0;
} }
}@keyframes d2Transition-d2-3751819762-2 { }@keyframes d2Transition-d2-508224771-2 {
0%, 49.982143% { 0%, 49.982143% {
opacity: 0; opacity: 0;
} }
@ -862,23 +862,23 @@
75.000000%, 100% { 75.000000%, 100% {
opacity: 0; opacity: 0;
} }
}@keyframes d2Transition-d2-3751819762-3 { }@keyframes d2Transition-d2-508224771-3 {
0%, 74.982143% { 0%, 74.982143% {
opacity: 0; opacity: 0;
} }
75.000000%, 100.000000% { 75.000000%, 100.000000% {
opacity: 1; opacity: 1;
} }
}]]></style><g style="animation: d2Transition-d2-3751819762-0 5600ms infinite" class="d2-3751819762" width="412" height="247" viewBox="-206 -166 412 247"><rect x="-206.000000" y="-166.000000" width="412.000000" height="247.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><g id="&#34;Chicken&#39;s plan&#34;"><g class="shape" ></g><text x="0.000000" y="-30.000000" class="text fill-N1" style="text-anchor:middle;font-size:35px">Chicken&#39;s plan</text></g><mask id="d2-3751819762" maskUnits="userSpaceOnUse" x="-206" y="-166" width="412" height="247"> }]]></style><g style="animation: d2Transition-d2-508224771-0 5600ms infinite" class="d2-508224771" width="412" height="247" viewBox="-206 -166 412 247"><rect x="-206.000000" y="-166.000000" width="412.000000" height="247.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><g id="&#34;Chicken&#39;s plan&#34;"><g class="shape" ></g><text x="0.000000" y="-30.000000" class="text fill-N1" style="text-anchor:middle;font-size:35px">Chicken&#39;s plan</text></g><mask id="d2-508224771" maskUnits="userSpaceOnUse" x="-206" y="-166" width="412" height="247">
<rect x="-206" y="-166" width="412" height="247" fill="white"></rect> <rect x="-206" y="-166" width="412" height="247" fill="white"></rect>
</mask></g><g style="animation: d2Transition-d2-3751819762-1 5600ms infinite" class="d2-3751819762" width="412" height="333" viewBox="-131 -166 412 333"><rect x="-131.000000" y="-166.000000" width="412.000000" height="333.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><g id="Approach road"><g class="shape" ><rect x="0.000000" y="0.000000" width="150.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="75.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Approach road</text></g><g id="&#34;Chicken&#39;s plan&#34;"><g class="shape" ></g><text x="75.000000" y="-30.000000" class="text fill-N1" style="text-anchor:middle;font-size:35px">Chicken&#39;s plan</text></g><mask id="d2-3302893893" maskUnits="userSpaceOnUse" x="-131" y="-166" width="412" height="333"> </mask></g><g style="animation: d2Transition-d2-508224771-1 5600ms infinite" class="d2-508224771" width="412" height="333" viewBox="-131 -166 412 333"><rect x="-131.000000" y="-166.000000" width="412.000000" height="333.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><g id="Approach road"><g class="shape" ><rect x="0.000000" y="0.000000" width="150.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="75.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Approach road</text></g><g id="&#34;Chicken&#39;s plan&#34;"><g class="shape" ></g><text x="75.000000" y="-30.000000" class="text fill-N1" style="text-anchor:middle;font-size:35px">Chicken&#39;s plan</text></g><mask id="d2-3302893893" maskUnits="userSpaceOnUse" x="-131" y="-166" width="412" height="333">
<rect x="-131" y="-166" width="412" height="333" fill="white"></rect> <rect x="-131" y="-166" width="412" height="333" fill="white"></rect>
</mask></g><g style="animation: d2Transition-d2-3751819762-2 5600ms infinite" class="d2-3751819762" width="412" height="499" viewBox="-131 -166 412 499"><rect x="-131.000000" y="-166.000000" width="412.000000" height="499.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><g id="Approach road"><g class="shape" ><rect x="0.000000" y="0.000000" width="150.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="75.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Approach road</text></g><g id="Cross road"><g class="shape" ><rect x="15.000000" y="166.000000" width="120.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="75.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Cross road</text></g><g id="&#34;Chicken&#39;s plan&#34;"><g class="shape" ></g><text x="75.000000" y="-30.000000" class="text fill-N1" style="text-anchor:middle;font-size:35px">Chicken&#39;s plan</text></g><g id="(Approach road -&gt; Cross road)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 75.000000 68.000000 C 75.000000 106.000000 75.000000 126.000000 75.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2369911030)" /></g><mask id="d2-2369911030" maskUnits="userSpaceOnUse" x="-131" y="-166" width="412" height="499"> </mask></g><g style="animation: d2Transition-d2-508224771-2 5600ms infinite" class="d2-508224771" width="412" height="499" viewBox="-131 -166 412 499"><rect x="-131.000000" y="-166.000000" width="412.000000" height="499.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><g id="Approach road"><g class="shape" ><rect x="0.000000" y="0.000000" width="150.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="75.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Approach road</text></g><g id="Cross road"><g class="shape" ><rect x="15.000000" y="166.000000" width="120.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="75.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Cross road</text></g><g id="&#34;Chicken&#39;s plan&#34;"><g class="shape" ></g><text x="75.000000" y="-30.000000" class="text fill-N1" style="text-anchor:middle;font-size:35px">Chicken&#39;s plan</text></g><g id="(Approach road -&gt; Cross road)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 75.000000 68.000000 C 75.000000 106.000000 75.000000 126.000000 75.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2454480105)" /></g><mask id="d2-2454480105" maskUnits="userSpaceOnUse" x="-131" y="-166" width="412" height="499">
<rect x="-131" y="-166" width="412" height="499" fill="white"></rect> <rect x="-131" y="-166" width="412" height="499" fill="white"></rect>
</mask></g><g style="animation: d2Transition-d2-3751819762-3 5600ms infinite" class="d2-3751819762" width="412" height="665" viewBox="-104 -166 412 665"><rect x="-104.000000" y="-166.000000" width="412.000000" height="665.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><g id="Approach road"><g class="shape" ><rect x="27.000000" y="0.000000" width="150.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="102.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Approach road</text></g><g id="Cross road"><g class="shape" ><rect x="42.000000" y="166.000000" width="120.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="102.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Cross road</text></g><g id="Make you wonder why"><g class="shape" ><rect x="0.000000" y="332.000000" width="203.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="101.500000" y="370.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Make you wonder why</text></g><g id="&#34;Chicken&#39;s plan&#34;"><g class="shape" ></g><text x="102.000000" y="-30.000000" class="text fill-N1" style="text-anchor:middle;font-size:35px">Chicken&#39;s plan</text></g><g id="(Approach road -&gt; Cross road)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 101.500000 68.000000 C 101.500000 106.000000 101.500000 126.000000 101.500000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-1488407051)" /></g><g id="(Cross road -&gt; Make you wonder why)[0]"><path d="M 101.500000 234.000000 C 101.500000 272.000000 101.500000 292.000000 101.500000 328.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-1488407051)" /></g><mask id="d2-1488407051" maskUnits="userSpaceOnUse" x="-104" y="-166" width="412" height="665"> </mask></g><g style="animation: d2Transition-d2-508224771-3 5600ms infinite" class="d2-508224771" width="412" height="665" viewBox="-104 -166 412 665"><rect x="-104.000000" y="-166.000000" width="412.000000" height="665.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><g id="Approach road"><g class="shape" ><rect x="27.000000" y="0.000000" width="150.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="102.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Approach road</text></g><g id="Cross road"><g class="shape" ><rect x="42.000000" y="166.000000" width="120.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="102.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Cross road</text></g><g id="Make you wonder why"><g class="shape" ><rect x="0.000000" y="332.000000" width="203.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="101.500000" y="370.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Make you wonder why</text></g><g id="&#34;Chicken&#39;s plan&#34;"><g class="shape" ></g><text x="102.000000" y="-30.000000" class="text fill-N1" style="text-anchor:middle;font-size:35px">Chicken&#39;s plan</text></g><g id="(Approach road -&gt; Cross road)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 101.500000 68.000000 C 101.500000 106.000000 101.500000 126.000000 101.500000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-682060979)" /></g><g id="(Cross road -&gt; Make you wonder why)[0]"><path d="M 101.500000 234.000000 C 101.500000 272.000000 101.500000 292.000000 101.500000 328.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-682060979)" /></g><mask id="d2-682060979" maskUnits="userSpaceOnUse" x="-104" y="-166" width="412" height="665">
<rect x="-104" y="-166" width="412" height="665" fill="white"></rect> <rect x="-104" y="-166" width="412" height="665" fill="white"></rect>
</mask></g></svg></svg> </mask></g></svg></svg>

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-2448830429" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-855222762" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-2448830429 .text-bold { .d2-855222762 .text-bold {
font-family: "d2-2448830429-font-bold"; font-family: "d2-855222762-font-bold";
} }
@font-face { @font-face {
font-family: d2-2448830429-font-bold; font-family: d2-855222762-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-2448830429 .fill-N1{fill:#0A0F25;} .d2-855222762 .fill-N1{fill:#0A0F25;}
.d2-2448830429 .fill-N2{fill:#676C7E;} .d2-855222762 .fill-N2{fill:#676C7E;}
.d2-2448830429 .fill-N3{fill:#9499AB;} .d2-855222762 .fill-N3{fill:#9499AB;}
.d2-2448830429 .fill-N4{fill:#CFD2DD;} .d2-855222762 .fill-N4{fill:#CFD2DD;}
.d2-2448830429 .fill-N5{fill:#DEE1EB;} .d2-855222762 .fill-N5{fill:#DEE1EB;}
.d2-2448830429 .fill-N6{fill:#EEF1F8;} .d2-855222762 .fill-N6{fill:#EEF1F8;}
.d2-2448830429 .fill-N7{fill:#FFFFFF;} .d2-855222762 .fill-N7{fill:#FFFFFF;}
.d2-2448830429 .fill-B1{fill:#0D32B2;} .d2-855222762 .fill-B1{fill:#0D32B2;}
.d2-2448830429 .fill-B2{fill:#0D32B2;} .d2-855222762 .fill-B2{fill:#0D32B2;}
.d2-2448830429 .fill-B3{fill:#E3E9FD;} .d2-855222762 .fill-B3{fill:#E3E9FD;}
.d2-2448830429 .fill-B4{fill:#E3E9FD;} .d2-855222762 .fill-B4{fill:#E3E9FD;}
.d2-2448830429 .fill-B5{fill:#EDF0FD;} .d2-855222762 .fill-B5{fill:#EDF0FD;}
.d2-2448830429 .fill-B6{fill:#F7F8FE;} .d2-855222762 .fill-B6{fill:#F7F8FE;}
.d2-2448830429 .fill-AA2{fill:#4A6FF3;} .d2-855222762 .fill-AA2{fill:#4A6FF3;}
.d2-2448830429 .fill-AA4{fill:#EDF0FD;} .d2-855222762 .fill-AA4{fill:#EDF0FD;}
.d2-2448830429 .fill-AA5{fill:#F7F8FE;} .d2-855222762 .fill-AA5{fill:#F7F8FE;}
.d2-2448830429 .fill-AB4{fill:#EDF0FD;} .d2-855222762 .fill-AB4{fill:#EDF0FD;}
.d2-2448830429 .fill-AB5{fill:#F7F8FE;} .d2-855222762 .fill-AB5{fill:#F7F8FE;}
.d2-2448830429 .stroke-N1{stroke:#0A0F25;} .d2-855222762 .stroke-N1{stroke:#0A0F25;}
.d2-2448830429 .stroke-N2{stroke:#676C7E;} .d2-855222762 .stroke-N2{stroke:#676C7E;}
.d2-2448830429 .stroke-N3{stroke:#9499AB;} .d2-855222762 .stroke-N3{stroke:#9499AB;}
.d2-2448830429 .stroke-N4{stroke:#CFD2DD;} .d2-855222762 .stroke-N4{stroke:#CFD2DD;}
.d2-2448830429 .stroke-N5{stroke:#DEE1EB;} .d2-855222762 .stroke-N5{stroke:#DEE1EB;}
.d2-2448830429 .stroke-N6{stroke:#EEF1F8;} .d2-855222762 .stroke-N6{stroke:#EEF1F8;}
.d2-2448830429 .stroke-N7{stroke:#FFFFFF;} .d2-855222762 .stroke-N7{stroke:#FFFFFF;}
.d2-2448830429 .stroke-B1{stroke:#0D32B2;} .d2-855222762 .stroke-B1{stroke:#0D32B2;}
.d2-2448830429 .stroke-B2{stroke:#0D32B2;} .d2-855222762 .stroke-B2{stroke:#0D32B2;}
.d2-2448830429 .stroke-B3{stroke:#E3E9FD;} .d2-855222762 .stroke-B3{stroke:#E3E9FD;}
.d2-2448830429 .stroke-B4{stroke:#E3E9FD;} .d2-855222762 .stroke-B4{stroke:#E3E9FD;}
.d2-2448830429 .stroke-B5{stroke:#EDF0FD;} .d2-855222762 .stroke-B5{stroke:#EDF0FD;}
.d2-2448830429 .stroke-B6{stroke:#F7F8FE;} .d2-855222762 .stroke-B6{stroke:#F7F8FE;}
.d2-2448830429 .stroke-AA2{stroke:#4A6FF3;} .d2-855222762 .stroke-AA2{stroke:#4A6FF3;}
.d2-2448830429 .stroke-AA4{stroke:#EDF0FD;} .d2-855222762 .stroke-AA4{stroke:#EDF0FD;}
.d2-2448830429 .stroke-AA5{stroke:#F7F8FE;} .d2-855222762 .stroke-AA5{stroke:#F7F8FE;}
.d2-2448830429 .stroke-AB4{stroke:#EDF0FD;} .d2-855222762 .stroke-AB4{stroke:#EDF0FD;}
.d2-2448830429 .stroke-AB5{stroke:#F7F8FE;} .d2-855222762 .stroke-AB5{stroke:#F7F8FE;}
.d2-2448830429 .background-color-N1{background-color:#0A0F25;} .d2-855222762 .background-color-N1{background-color:#0A0F25;}
.d2-2448830429 .background-color-N2{background-color:#676C7E;} .d2-855222762 .background-color-N2{background-color:#676C7E;}
.d2-2448830429 .background-color-N3{background-color:#9499AB;} .d2-855222762 .background-color-N3{background-color:#9499AB;}
.d2-2448830429 .background-color-N4{background-color:#CFD2DD;} .d2-855222762 .background-color-N4{background-color:#CFD2DD;}
.d2-2448830429 .background-color-N5{background-color:#DEE1EB;} .d2-855222762 .background-color-N5{background-color:#DEE1EB;}
.d2-2448830429 .background-color-N6{background-color:#EEF1F8;} .d2-855222762 .background-color-N6{background-color:#EEF1F8;}
.d2-2448830429 .background-color-N7{background-color:#FFFFFF;} .d2-855222762 .background-color-N7{background-color:#FFFFFF;}
.d2-2448830429 .background-color-B1{background-color:#0D32B2;} .d2-855222762 .background-color-B1{background-color:#0D32B2;}
.d2-2448830429 .background-color-B2{background-color:#0D32B2;} .d2-855222762 .background-color-B2{background-color:#0D32B2;}
.d2-2448830429 .background-color-B3{background-color:#E3E9FD;} .d2-855222762 .background-color-B3{background-color:#E3E9FD;}
.d2-2448830429 .background-color-B4{background-color:#E3E9FD;} .d2-855222762 .background-color-B4{background-color:#E3E9FD;}
.d2-2448830429 .background-color-B5{background-color:#EDF0FD;} .d2-855222762 .background-color-B5{background-color:#EDF0FD;}
.d2-2448830429 .background-color-B6{background-color:#F7F8FE;} .d2-855222762 .background-color-B6{background-color:#F7F8FE;}
.d2-2448830429 .background-color-AA2{background-color:#4A6FF3;} .d2-855222762 .background-color-AA2{background-color:#4A6FF3;}
.d2-2448830429 .background-color-AA4{background-color:#EDF0FD;} .d2-855222762 .background-color-AA4{background-color:#EDF0FD;}
.d2-2448830429 .background-color-AA5{background-color:#F7F8FE;} .d2-855222762 .background-color-AA5{background-color:#F7F8FE;}
.d2-2448830429 .background-color-AB4{background-color:#EDF0FD;} .d2-855222762 .background-color-AB4{background-color:#EDF0FD;}
.d2-2448830429 .background-color-AB5{background-color:#F7F8FE;} .d2-855222762 .background-color-AB5{background-color:#F7F8FE;}
.d2-2448830429 .color-N1{color:#0A0F25;} .d2-855222762 .color-N1{color:#0A0F25;}
.d2-2448830429 .color-N2{color:#676C7E;} .d2-855222762 .color-N2{color:#676C7E;}
.d2-2448830429 .color-N3{color:#9499AB;} .d2-855222762 .color-N3{color:#9499AB;}
.d2-2448830429 .color-N4{color:#CFD2DD;} .d2-855222762 .color-N4{color:#CFD2DD;}
.d2-2448830429 .color-N5{color:#DEE1EB;} .d2-855222762 .color-N5{color:#DEE1EB;}
.d2-2448830429 .color-N6{color:#EEF1F8;} .d2-855222762 .color-N6{color:#EEF1F8;}
.d2-2448830429 .color-N7{color:#FFFFFF;} .d2-855222762 .color-N7{color:#FFFFFF;}
.d2-2448830429 .color-B1{color:#0D32B2;} .d2-855222762 .color-B1{color:#0D32B2;}
.d2-2448830429 .color-B2{color:#0D32B2;} .d2-855222762 .color-B2{color:#0D32B2;}
.d2-2448830429 .color-B3{color:#E3E9FD;} .d2-855222762 .color-B3{color:#E3E9FD;}
.d2-2448830429 .color-B4{color:#E3E9FD;} .d2-855222762 .color-B4{color:#E3E9FD;}
.d2-2448830429 .color-B5{color:#EDF0FD;} .d2-855222762 .color-B5{color:#EDF0FD;}
.d2-2448830429 .color-B6{color:#F7F8FE;} .d2-855222762 .color-B6{color:#F7F8FE;}
.d2-2448830429 .color-AA2{color:#4A6FF3;} .d2-855222762 .color-AA2{color:#4A6FF3;}
.d2-2448830429 .color-AA4{color:#EDF0FD;} .d2-855222762 .color-AA4{color:#EDF0FD;}
.d2-2448830429 .color-AA5{color:#F7F8FE;} .d2-855222762 .color-AA5{color:#F7F8FE;}
.d2-2448830429 .color-AB4{color:#EDF0FD;} .d2-855222762 .color-AB4{color:#EDF0FD;}
.d2-2448830429 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2448830429)" /></g><mask id="d2-2448830429" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434"> .d2-855222762 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-855222762)" /></g><mask id="d2-855222762" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434">
<rect x="-101" y="-101" width="256" height="434" fill="white"></rect> <rect x="-101" y="-101" width="256" height="434" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-524372316" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-803513315" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-524372316 .text-bold { .d2-803513315 .text-bold {
font-family: "d2-524372316-font-bold"; font-family: "d2-803513315-font-bold";
} }
@font-face { @font-face {
font-family: d2-524372316-font-bold; font-family: d2-803513315-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-524372316 .fill-N1{fill:#0A0F25;} .d2-803513315 .fill-N1{fill:#0A0F25;}
.d2-524372316 .fill-N2{fill:#676C7E;} .d2-803513315 .fill-N2{fill:#676C7E;}
.d2-524372316 .fill-N3{fill:#9499AB;} .d2-803513315 .fill-N3{fill:#9499AB;}
.d2-524372316 .fill-N4{fill:#CFD2DD;} .d2-803513315 .fill-N4{fill:#CFD2DD;}
.d2-524372316 .fill-N5{fill:#DEE1EB;} .d2-803513315 .fill-N5{fill:#DEE1EB;}
.d2-524372316 .fill-N6{fill:#EEF1F8;} .d2-803513315 .fill-N6{fill:#EEF1F8;}
.d2-524372316 .fill-N7{fill:#FFFFFF;} .d2-803513315 .fill-N7{fill:#FFFFFF;}
.d2-524372316 .fill-B1{fill:#0D32B2;} .d2-803513315 .fill-B1{fill:#0D32B2;}
.d2-524372316 .fill-B2{fill:#0D32B2;} .d2-803513315 .fill-B2{fill:#0D32B2;}
.d2-524372316 .fill-B3{fill:#E3E9FD;} .d2-803513315 .fill-B3{fill:#E3E9FD;}
.d2-524372316 .fill-B4{fill:#E3E9FD;} .d2-803513315 .fill-B4{fill:#E3E9FD;}
.d2-524372316 .fill-B5{fill:#EDF0FD;} .d2-803513315 .fill-B5{fill:#EDF0FD;}
.d2-524372316 .fill-B6{fill:#F7F8FE;} .d2-803513315 .fill-B6{fill:#F7F8FE;}
.d2-524372316 .fill-AA2{fill:#4A6FF3;} .d2-803513315 .fill-AA2{fill:#4A6FF3;}
.d2-524372316 .fill-AA4{fill:#EDF0FD;} .d2-803513315 .fill-AA4{fill:#EDF0FD;}
.d2-524372316 .fill-AA5{fill:#F7F8FE;} .d2-803513315 .fill-AA5{fill:#F7F8FE;}
.d2-524372316 .fill-AB4{fill:#EDF0FD;} .d2-803513315 .fill-AB4{fill:#EDF0FD;}
.d2-524372316 .fill-AB5{fill:#F7F8FE;} .d2-803513315 .fill-AB5{fill:#F7F8FE;}
.d2-524372316 .stroke-N1{stroke:#0A0F25;} .d2-803513315 .stroke-N1{stroke:#0A0F25;}
.d2-524372316 .stroke-N2{stroke:#676C7E;} .d2-803513315 .stroke-N2{stroke:#676C7E;}
.d2-524372316 .stroke-N3{stroke:#9499AB;} .d2-803513315 .stroke-N3{stroke:#9499AB;}
.d2-524372316 .stroke-N4{stroke:#CFD2DD;} .d2-803513315 .stroke-N4{stroke:#CFD2DD;}
.d2-524372316 .stroke-N5{stroke:#DEE1EB;} .d2-803513315 .stroke-N5{stroke:#DEE1EB;}
.d2-524372316 .stroke-N6{stroke:#EEF1F8;} .d2-803513315 .stroke-N6{stroke:#EEF1F8;}
.d2-524372316 .stroke-N7{stroke:#FFFFFF;} .d2-803513315 .stroke-N7{stroke:#FFFFFF;}
.d2-524372316 .stroke-B1{stroke:#0D32B2;} .d2-803513315 .stroke-B1{stroke:#0D32B2;}
.d2-524372316 .stroke-B2{stroke:#0D32B2;} .d2-803513315 .stroke-B2{stroke:#0D32B2;}
.d2-524372316 .stroke-B3{stroke:#E3E9FD;} .d2-803513315 .stroke-B3{stroke:#E3E9FD;}
.d2-524372316 .stroke-B4{stroke:#E3E9FD;} .d2-803513315 .stroke-B4{stroke:#E3E9FD;}
.d2-524372316 .stroke-B5{stroke:#EDF0FD;} .d2-803513315 .stroke-B5{stroke:#EDF0FD;}
.d2-524372316 .stroke-B6{stroke:#F7F8FE;} .d2-803513315 .stroke-B6{stroke:#F7F8FE;}
.d2-524372316 .stroke-AA2{stroke:#4A6FF3;} .d2-803513315 .stroke-AA2{stroke:#4A6FF3;}
.d2-524372316 .stroke-AA4{stroke:#EDF0FD;} .d2-803513315 .stroke-AA4{stroke:#EDF0FD;}
.d2-524372316 .stroke-AA5{stroke:#F7F8FE;} .d2-803513315 .stroke-AA5{stroke:#F7F8FE;}
.d2-524372316 .stroke-AB4{stroke:#EDF0FD;} .d2-803513315 .stroke-AB4{stroke:#EDF0FD;}
.d2-524372316 .stroke-AB5{stroke:#F7F8FE;} .d2-803513315 .stroke-AB5{stroke:#F7F8FE;}
.d2-524372316 .background-color-N1{background-color:#0A0F25;} .d2-803513315 .background-color-N1{background-color:#0A0F25;}
.d2-524372316 .background-color-N2{background-color:#676C7E;} .d2-803513315 .background-color-N2{background-color:#676C7E;}
.d2-524372316 .background-color-N3{background-color:#9499AB;} .d2-803513315 .background-color-N3{background-color:#9499AB;}
.d2-524372316 .background-color-N4{background-color:#CFD2DD;} .d2-803513315 .background-color-N4{background-color:#CFD2DD;}
.d2-524372316 .background-color-N5{background-color:#DEE1EB;} .d2-803513315 .background-color-N5{background-color:#DEE1EB;}
.d2-524372316 .background-color-N6{background-color:#EEF1F8;} .d2-803513315 .background-color-N6{background-color:#EEF1F8;}
.d2-524372316 .background-color-N7{background-color:#FFFFFF;} .d2-803513315 .background-color-N7{background-color:#FFFFFF;}
.d2-524372316 .background-color-B1{background-color:#0D32B2;} .d2-803513315 .background-color-B1{background-color:#0D32B2;}
.d2-524372316 .background-color-B2{background-color:#0D32B2;} .d2-803513315 .background-color-B2{background-color:#0D32B2;}
.d2-524372316 .background-color-B3{background-color:#E3E9FD;} .d2-803513315 .background-color-B3{background-color:#E3E9FD;}
.d2-524372316 .background-color-B4{background-color:#E3E9FD;} .d2-803513315 .background-color-B4{background-color:#E3E9FD;}
.d2-524372316 .background-color-B5{background-color:#EDF0FD;} .d2-803513315 .background-color-B5{background-color:#EDF0FD;}
.d2-524372316 .background-color-B6{background-color:#F7F8FE;} .d2-803513315 .background-color-B6{background-color:#F7F8FE;}
.d2-524372316 .background-color-AA2{background-color:#4A6FF3;} .d2-803513315 .background-color-AA2{background-color:#4A6FF3;}
.d2-524372316 .background-color-AA4{background-color:#EDF0FD;} .d2-803513315 .background-color-AA4{background-color:#EDF0FD;}
.d2-524372316 .background-color-AA5{background-color:#F7F8FE;} .d2-803513315 .background-color-AA5{background-color:#F7F8FE;}
.d2-524372316 .background-color-AB4{background-color:#EDF0FD;} .d2-803513315 .background-color-AB4{background-color:#EDF0FD;}
.d2-524372316 .background-color-AB5{background-color:#F7F8FE;} .d2-803513315 .background-color-AB5{background-color:#F7F8FE;}
.d2-524372316 .color-N1{color:#0A0F25;} .d2-803513315 .color-N1{color:#0A0F25;}
.d2-524372316 .color-N2{color:#676C7E;} .d2-803513315 .color-N2{color:#676C7E;}
.d2-524372316 .color-N3{color:#9499AB;} .d2-803513315 .color-N3{color:#9499AB;}
.d2-524372316 .color-N4{color:#CFD2DD;} .d2-803513315 .color-N4{color:#CFD2DD;}
.d2-524372316 .color-N5{color:#DEE1EB;} .d2-803513315 .color-N5{color:#DEE1EB;}
.d2-524372316 .color-N6{color:#EEF1F8;} .d2-803513315 .color-N6{color:#EEF1F8;}
.d2-524372316 .color-N7{color:#FFFFFF;} .d2-803513315 .color-N7{color:#FFFFFF;}
.d2-524372316 .color-B1{color:#0D32B2;} .d2-803513315 .color-B1{color:#0D32B2;}
.d2-524372316 .color-B2{color:#0D32B2;} .d2-803513315 .color-B2{color:#0D32B2;}
.d2-524372316 .color-B3{color:#E3E9FD;} .d2-803513315 .color-B3{color:#E3E9FD;}
.d2-524372316 .color-B4{color:#E3E9FD;} .d2-803513315 .color-B4{color:#E3E9FD;}
.d2-524372316 .color-B5{color:#EDF0FD;} .d2-803513315 .color-B5{color:#EDF0FD;}
.d2-524372316 .color-B6{color:#F7F8FE;} .d2-803513315 .color-B6{color:#F7F8FE;}
.d2-524372316 .color-AA2{color:#4A6FF3;} .d2-803513315 .color-AA2{color:#4A6FF3;}
.d2-524372316 .color-AA4{color:#EDF0FD;} .d2-803513315 .color-AA4{color:#EDF0FD;}
.d2-524372316 .color-AA5{color:#F7F8FE;} .d2-803513315 .color-AA5{color:#F7F8FE;}
.d2-524372316 .color-AB4{color:#EDF0FD;} .d2-803513315 .color-AB4{color:#EDF0FD;}
.d2-524372316 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-524372316)" /></g><mask id="d2-524372316" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434"> .d2-803513315 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-803513315)" /></g><mask id="d2-803513315" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434">
<rect x="-101" y="-101" width="256" height="434" fill="white"></rect> <rect x="-101" y="-101" width="256" height="434" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-118346165" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-2065426295" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-118346165 .text-bold { .d2-2065426295 .text-bold {
font-family: "d2-118346165-font-bold"; font-family: "d2-2065426295-font-bold";
} }
@font-face { @font-face {
font-family: d2-118346165-font-bold; font-family: d2-2065426295-font-bold;
src: url("data:application/font-woff;base64,d09GRgABAAAAAAZwAAoAAAAACywAAguFAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgXxHXrmNtYXAAAAFUAAAAMgAAADIADQCyZ2x5ZgAAAYgAAAEQAAABEBXyvOFoZWFkAAACmAAAADYAAAA2G38e1GhoZWEAAALQAAAAJAAAACQKfwXCaG10eAAAAvQAAAAMAAAADAa9AGpsb2NhAAADAAAAAAgAAAAIAFgAtG1heHAAAAMIAAAAIAAAACAAGwD3bmFtZQAAAygAAAMoAAAIKgjwVkFwb3N0AAAGUAAAAB0AAAAg/9EAMgADAioCvAAFAAACigJYAAAASwKKAlgAAAFeADIBKQAAAgsHAwMEAwICBGAAAvcAAAADAAAAAAAAAABBREJPACAAIP//Au7/BgAAA9gBESAAAZ8AAAAAAfAClAAAACAAAwAAAAEAAwABAAAADAAEACQAAAAEAAQAAQAAAHn//wAAAHj///+JAAEAAAAAAAEAAgAAAAAABQBQAAACYgKUAAMACQAPABIAFQAAMxEhESUzJycjBzczNzcjFwM3JwERB1ACEv6lpCcpBCkpBCogmB96X18BTV4ClP1sW01iYvZfOzv+nrm6/o0Bc7oAAAEADgAAAfQB8AAZAAAzEyczFxYWFzM2Njc3MwcXIycmJicjBgYHBw6Yj54sChYKBAgSCCKYkJmeMAwXDAQJFAknAQLuUBUrFRUrFVD/8VIVLBUVKxZSAAABAAz/PgH9AfAAGwAAFyImJzcWFjMyNjc3AzMXFhYXMzY2NzczAw4CeBYhDxoHEgglKAoHv5RHCxIKBAgRCTyNrBc4T8IGBHABBSQdGgHj1SJGJSNHI9X+Cz5VKgAAAAABAAAAAguFT5ZgE18PPPUAAQPoAAAAANhdoIQAAAAA3WYvNv43/sQIbQPxAAEAAwACAAAAAAAAAAEAAAPY/u8AAAiY/jf+NwhtAAEAAAAAAAAAAAAAAAAAAAADArIAUAICAA4CCQAMAAAALABYAIgAAQAAAAMAkAAMAGMABwABAAAAAAAAAAAAAAAAAAQAA3icnJTPbhtVFMZ/TmzTCsECRVW6ie6CRZHo2FRJ1TYrh9SKRRQHjwtCQkgTz/iPMp4ZeSYO4QlY8xa8RVc8BM+BWKP5fOzYBdEmipJ8d+75851zvnOBHf5mm0r1IfBHPTFcYa9+bniLB/UTw9u061uGqzyp/Wm4RlibG67zea1n+CPeVn8z/ID96k+GH7JbbRv+mGfVHcOfbDv+Mvwp+7xd4Aq84FfDFXbJDG+xw4+Gt3mExaxUeUTTcI3P2DNcZw/oM6EgZkLCCMeQCSOumBGR4xMxY8KQiBBHhxYxhb4mBEKO0X9+DfApmBEo4pgCR4xPTEDO2CL+Iq+Uc2Uc6jSzuxYFYwIu5HFJQIIjZURKQsSl4hQUZLyiQYOcgfhmFOR45EyI8UiZMaJBlzan9BkzIcfRVqSSmU/KkIJrAuV3ZlF2ZkBEQm6srkgIxdOJXyTvDqc4umSyXY98uhHhSxzfybvklsr2Kzz9ujVmm3mXbALm6mesrsS6udYEx7ot87b4VrjgFe5e/dlk8v4ehfpfKPIFV5p/qEklYpLg3C4tfCnId49xHOncwVdHvqdDnxO6vKGvc4sePVqc0afDa/l26eH4mi5nHMujI7y4a0sxZ/yA4xs6siljR9afxcQifiYzdefiOFMdUzL1vGTuqdZIFd59wuUOpRvqyOUz0B6Vlk7zS7RnASNTRSaGU/VyqY3c+heaIqaqpZzt7X25DXPbveUW35Bqh0u1LjiVk1swet9UvXc0c60fj4CQlAtZDEiZ0qDgRrzPCbgixnGs7p1oSwpaK58yz41UEjEVgw6J4szI9Dcw3fjGfbChe2dvSSj/kunlqqr7ZHHq1e2M3qh7yzvfuhytTaBhU03X1DQQ18S0H2mn1vn78s31uqU85YiUmPBfL8AzPJrsc8AhY2UY6GZur0NTL0STlxyq+ksiWQ2l58giHODxnAMOeMnzd/q4ZOKMi1txWc/d4pgjuhx+UBUL+y5HvF59+/+sv4tpU7U4nq5OL+49xSd3UOsX2rPb97KniZWTmFu02604I2BacnG76zW5x3j/AAAA//8BAAD///S3T1F4nGJgZgCD/+cYjBiwAAAAAAD//wEAAP//LwECAwAAAA=="); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-118346165 .fill-N1{fill:#0A0F25;} .d2-2065426295 .fill-N1{fill:#0A0F25;}
.d2-118346165 .fill-N2{fill:#676C7E;} .d2-2065426295 .fill-N2{fill:#676C7E;}
.d2-118346165 .fill-N3{fill:#9499AB;} .d2-2065426295 .fill-N3{fill:#9499AB;}
.d2-118346165 .fill-N4{fill:#CFD2DD;} .d2-2065426295 .fill-N4{fill:#CFD2DD;}
.d2-118346165 .fill-N5{fill:#DEE1EB;} .d2-2065426295 .fill-N5{fill:#DEE1EB;}
.d2-118346165 .fill-N6{fill:#EEF1F8;} .d2-2065426295 .fill-N6{fill:#EEF1F8;}
.d2-118346165 .fill-N7{fill:#FFFFFF;} .d2-2065426295 .fill-N7{fill:#FFFFFF;}
.d2-118346165 .fill-B1{fill:#0D32B2;} .d2-2065426295 .fill-B1{fill:#0D32B2;}
.d2-118346165 .fill-B2{fill:#0D32B2;} .d2-2065426295 .fill-B2{fill:#0D32B2;}
.d2-118346165 .fill-B3{fill:#E3E9FD;} .d2-2065426295 .fill-B3{fill:#E3E9FD;}
.d2-118346165 .fill-B4{fill:#E3E9FD;} .d2-2065426295 .fill-B4{fill:#E3E9FD;}
.d2-118346165 .fill-B5{fill:#EDF0FD;} .d2-2065426295 .fill-B5{fill:#EDF0FD;}
.d2-118346165 .fill-B6{fill:#F7F8FE;} .d2-2065426295 .fill-B6{fill:#F7F8FE;}
.d2-118346165 .fill-AA2{fill:#4A6FF3;} .d2-2065426295 .fill-AA2{fill:#4A6FF3;}
.d2-118346165 .fill-AA4{fill:#EDF0FD;} .d2-2065426295 .fill-AA4{fill:#EDF0FD;}
.d2-118346165 .fill-AA5{fill:#F7F8FE;} .d2-2065426295 .fill-AA5{fill:#F7F8FE;}
.d2-118346165 .fill-AB4{fill:#EDF0FD;} .d2-2065426295 .fill-AB4{fill:#EDF0FD;}
.d2-118346165 .fill-AB5{fill:#F7F8FE;} .d2-2065426295 .fill-AB5{fill:#F7F8FE;}
.d2-118346165 .stroke-N1{stroke:#0A0F25;} .d2-2065426295 .stroke-N1{stroke:#0A0F25;}
.d2-118346165 .stroke-N2{stroke:#676C7E;} .d2-2065426295 .stroke-N2{stroke:#676C7E;}
.d2-118346165 .stroke-N3{stroke:#9499AB;} .d2-2065426295 .stroke-N3{stroke:#9499AB;}
.d2-118346165 .stroke-N4{stroke:#CFD2DD;} .d2-2065426295 .stroke-N4{stroke:#CFD2DD;}
.d2-118346165 .stroke-N5{stroke:#DEE1EB;} .d2-2065426295 .stroke-N5{stroke:#DEE1EB;}
.d2-118346165 .stroke-N6{stroke:#EEF1F8;} .d2-2065426295 .stroke-N6{stroke:#EEF1F8;}
.d2-118346165 .stroke-N7{stroke:#FFFFFF;} .d2-2065426295 .stroke-N7{stroke:#FFFFFF;}
.d2-118346165 .stroke-B1{stroke:#0D32B2;} .d2-2065426295 .stroke-B1{stroke:#0D32B2;}
.d2-118346165 .stroke-B2{stroke:#0D32B2;} .d2-2065426295 .stroke-B2{stroke:#0D32B2;}
.d2-118346165 .stroke-B3{stroke:#E3E9FD;} .d2-2065426295 .stroke-B3{stroke:#E3E9FD;}
.d2-118346165 .stroke-B4{stroke:#E3E9FD;} .d2-2065426295 .stroke-B4{stroke:#E3E9FD;}
.d2-118346165 .stroke-B5{stroke:#EDF0FD;} .d2-2065426295 .stroke-B5{stroke:#EDF0FD;}
.d2-118346165 .stroke-B6{stroke:#F7F8FE;} .d2-2065426295 .stroke-B6{stroke:#F7F8FE;}
.d2-118346165 .stroke-AA2{stroke:#4A6FF3;} .d2-2065426295 .stroke-AA2{stroke:#4A6FF3;}
.d2-118346165 .stroke-AA4{stroke:#EDF0FD;} .d2-2065426295 .stroke-AA4{stroke:#EDF0FD;}
.d2-118346165 .stroke-AA5{stroke:#F7F8FE;} .d2-2065426295 .stroke-AA5{stroke:#F7F8FE;}
.d2-118346165 .stroke-AB4{stroke:#EDF0FD;} .d2-2065426295 .stroke-AB4{stroke:#EDF0FD;}
.d2-118346165 .stroke-AB5{stroke:#F7F8FE;} .d2-2065426295 .stroke-AB5{stroke:#F7F8FE;}
.d2-118346165 .background-color-N1{background-color:#0A0F25;} .d2-2065426295 .background-color-N1{background-color:#0A0F25;}
.d2-118346165 .background-color-N2{background-color:#676C7E;} .d2-2065426295 .background-color-N2{background-color:#676C7E;}
.d2-118346165 .background-color-N3{background-color:#9499AB;} .d2-2065426295 .background-color-N3{background-color:#9499AB;}
.d2-118346165 .background-color-N4{background-color:#CFD2DD;} .d2-2065426295 .background-color-N4{background-color:#CFD2DD;}
.d2-118346165 .background-color-N5{background-color:#DEE1EB;} .d2-2065426295 .background-color-N5{background-color:#DEE1EB;}
.d2-118346165 .background-color-N6{background-color:#EEF1F8;} .d2-2065426295 .background-color-N6{background-color:#EEF1F8;}
.d2-118346165 .background-color-N7{background-color:#FFFFFF;} .d2-2065426295 .background-color-N7{background-color:#FFFFFF;}
.d2-118346165 .background-color-B1{background-color:#0D32B2;} .d2-2065426295 .background-color-B1{background-color:#0D32B2;}
.d2-118346165 .background-color-B2{background-color:#0D32B2;} .d2-2065426295 .background-color-B2{background-color:#0D32B2;}
.d2-118346165 .background-color-B3{background-color:#E3E9FD;} .d2-2065426295 .background-color-B3{background-color:#E3E9FD;}
.d2-118346165 .background-color-B4{background-color:#E3E9FD;} .d2-2065426295 .background-color-B4{background-color:#E3E9FD;}
.d2-118346165 .background-color-B5{background-color:#EDF0FD;} .d2-2065426295 .background-color-B5{background-color:#EDF0FD;}
.d2-118346165 .background-color-B6{background-color:#F7F8FE;} .d2-2065426295 .background-color-B6{background-color:#F7F8FE;}
.d2-118346165 .background-color-AA2{background-color:#4A6FF3;} .d2-2065426295 .background-color-AA2{background-color:#4A6FF3;}
.d2-118346165 .background-color-AA4{background-color:#EDF0FD;} .d2-2065426295 .background-color-AA4{background-color:#EDF0FD;}
.d2-118346165 .background-color-AA5{background-color:#F7F8FE;} .d2-2065426295 .background-color-AA5{background-color:#F7F8FE;}
.d2-118346165 .background-color-AB4{background-color:#EDF0FD;} .d2-2065426295 .background-color-AB4{background-color:#EDF0FD;}
.d2-118346165 .background-color-AB5{background-color:#F7F8FE;} .d2-2065426295 .background-color-AB5{background-color:#F7F8FE;}
.d2-118346165 .color-N1{color:#0A0F25;} .d2-2065426295 .color-N1{color:#0A0F25;}
.d2-118346165 .color-N2{color:#676C7E;} .d2-2065426295 .color-N2{color:#676C7E;}
.d2-118346165 .color-N3{color:#9499AB;} .d2-2065426295 .color-N3{color:#9499AB;}
.d2-118346165 .color-N4{color:#CFD2DD;} .d2-2065426295 .color-N4{color:#CFD2DD;}
.d2-118346165 .color-N5{color:#DEE1EB;} .d2-2065426295 .color-N5{color:#DEE1EB;}
.d2-118346165 .color-N6{color:#EEF1F8;} .d2-2065426295 .color-N6{color:#EEF1F8;}
.d2-118346165 .color-N7{color:#FFFFFF;} .d2-2065426295 .color-N7{color:#FFFFFF;}
.d2-118346165 .color-B1{color:#0D32B2;} .d2-2065426295 .color-B1{color:#0D32B2;}
.d2-118346165 .color-B2{color:#0D32B2;} .d2-2065426295 .color-B2{color:#0D32B2;}
.d2-118346165 .color-B3{color:#E3E9FD;} .d2-2065426295 .color-B3{color:#E3E9FD;}
.d2-118346165 .color-B4{color:#E3E9FD;} .d2-2065426295 .color-B4{color:#E3E9FD;}
.d2-118346165 .color-B5{color:#EDF0FD;} .d2-2065426295 .color-B5{color:#EDF0FD;}
.d2-118346165 .color-B6{color:#F7F8FE;} .d2-2065426295 .color-B6{color:#F7F8FE;}
.d2-118346165 .color-AA2{color:#4A6FF3;} .d2-2065426295 .color-AA2{color:#4A6FF3;}
.d2-118346165 .color-AA4{color:#EDF0FD;} .d2-2065426295 .color-AA4{color:#EDF0FD;}
.d2-118346165 .color-AA5{color:#F7F8FE;} .d2-2065426295 .color-AA5{color:#F7F8FE;}
.d2-118346165 .color-AB4{color:#EDF0FD;} .d2-2065426295 .color-AB4{color:#EDF0FD;}
.d2-118346165 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 22.784863 67.985640 C 18.204819 106.000000 18.200000 126.000000 22.523419 162.028493" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-118346165)" /></g><g id="(y -&gt; x)[0]"><path d="M 31.215137 164.014360 C 35.795181 126.000000 35.800000 106.000000 31.476581 69.971507" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-118346165)" /></g><mask id="d2-118346165" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434"> .d2-2065426295 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 22.784863 67.985640 C 18.204819 106.000000 18.200000 126.000000 22.523419 162.028493" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2065426295)" /></g><g id="(y -&gt; x)[0]"><path d="M 31.215137 164.014360 C 35.795181 126.000000 35.800000 106.000000 31.476581 69.971507" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2065426295)" /></g><mask id="d2-2065426295" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434">
<rect x="-101" y="-101" width="256" height="434" fill="white"></rect> <rect x="-101" y="-101" width="256" height="434" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 9.5 KiB

After

Width:  |  Height:  |  Size: 9.6 KiB

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-524372316" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-803513315" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-524372316 .text-bold { .d2-803513315 .text-bold {
font-family: "d2-524372316-font-bold"; font-family: "d2-803513315-font-bold";
} }
@font-face { @font-face {
font-family: d2-524372316-font-bold; font-family: d2-803513315-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-524372316 .fill-N1{fill:#0A0F25;} .d2-803513315 .fill-N1{fill:#0A0F25;}
.d2-524372316 .fill-N2{fill:#676C7E;} .d2-803513315 .fill-N2{fill:#676C7E;}
.d2-524372316 .fill-N3{fill:#9499AB;} .d2-803513315 .fill-N3{fill:#9499AB;}
.d2-524372316 .fill-N4{fill:#CFD2DD;} .d2-803513315 .fill-N4{fill:#CFD2DD;}
.d2-524372316 .fill-N5{fill:#DEE1EB;} .d2-803513315 .fill-N5{fill:#DEE1EB;}
.d2-524372316 .fill-N6{fill:#EEF1F8;} .d2-803513315 .fill-N6{fill:#EEF1F8;}
.d2-524372316 .fill-N7{fill:#FFFFFF;} .d2-803513315 .fill-N7{fill:#FFFFFF;}
.d2-524372316 .fill-B1{fill:#0D32B2;} .d2-803513315 .fill-B1{fill:#0D32B2;}
.d2-524372316 .fill-B2{fill:#0D32B2;} .d2-803513315 .fill-B2{fill:#0D32B2;}
.d2-524372316 .fill-B3{fill:#E3E9FD;} .d2-803513315 .fill-B3{fill:#E3E9FD;}
.d2-524372316 .fill-B4{fill:#E3E9FD;} .d2-803513315 .fill-B4{fill:#E3E9FD;}
.d2-524372316 .fill-B5{fill:#EDF0FD;} .d2-803513315 .fill-B5{fill:#EDF0FD;}
.d2-524372316 .fill-B6{fill:#F7F8FE;} .d2-803513315 .fill-B6{fill:#F7F8FE;}
.d2-524372316 .fill-AA2{fill:#4A6FF3;} .d2-803513315 .fill-AA2{fill:#4A6FF3;}
.d2-524372316 .fill-AA4{fill:#EDF0FD;} .d2-803513315 .fill-AA4{fill:#EDF0FD;}
.d2-524372316 .fill-AA5{fill:#F7F8FE;} .d2-803513315 .fill-AA5{fill:#F7F8FE;}
.d2-524372316 .fill-AB4{fill:#EDF0FD;} .d2-803513315 .fill-AB4{fill:#EDF0FD;}
.d2-524372316 .fill-AB5{fill:#F7F8FE;} .d2-803513315 .fill-AB5{fill:#F7F8FE;}
.d2-524372316 .stroke-N1{stroke:#0A0F25;} .d2-803513315 .stroke-N1{stroke:#0A0F25;}
.d2-524372316 .stroke-N2{stroke:#676C7E;} .d2-803513315 .stroke-N2{stroke:#676C7E;}
.d2-524372316 .stroke-N3{stroke:#9499AB;} .d2-803513315 .stroke-N3{stroke:#9499AB;}
.d2-524372316 .stroke-N4{stroke:#CFD2DD;} .d2-803513315 .stroke-N4{stroke:#CFD2DD;}
.d2-524372316 .stroke-N5{stroke:#DEE1EB;} .d2-803513315 .stroke-N5{stroke:#DEE1EB;}
.d2-524372316 .stroke-N6{stroke:#EEF1F8;} .d2-803513315 .stroke-N6{stroke:#EEF1F8;}
.d2-524372316 .stroke-N7{stroke:#FFFFFF;} .d2-803513315 .stroke-N7{stroke:#FFFFFF;}
.d2-524372316 .stroke-B1{stroke:#0D32B2;} .d2-803513315 .stroke-B1{stroke:#0D32B2;}
.d2-524372316 .stroke-B2{stroke:#0D32B2;} .d2-803513315 .stroke-B2{stroke:#0D32B2;}
.d2-524372316 .stroke-B3{stroke:#E3E9FD;} .d2-803513315 .stroke-B3{stroke:#E3E9FD;}
.d2-524372316 .stroke-B4{stroke:#E3E9FD;} .d2-803513315 .stroke-B4{stroke:#E3E9FD;}
.d2-524372316 .stroke-B5{stroke:#EDF0FD;} .d2-803513315 .stroke-B5{stroke:#EDF0FD;}
.d2-524372316 .stroke-B6{stroke:#F7F8FE;} .d2-803513315 .stroke-B6{stroke:#F7F8FE;}
.d2-524372316 .stroke-AA2{stroke:#4A6FF3;} .d2-803513315 .stroke-AA2{stroke:#4A6FF3;}
.d2-524372316 .stroke-AA4{stroke:#EDF0FD;} .d2-803513315 .stroke-AA4{stroke:#EDF0FD;}
.d2-524372316 .stroke-AA5{stroke:#F7F8FE;} .d2-803513315 .stroke-AA5{stroke:#F7F8FE;}
.d2-524372316 .stroke-AB4{stroke:#EDF0FD;} .d2-803513315 .stroke-AB4{stroke:#EDF0FD;}
.d2-524372316 .stroke-AB5{stroke:#F7F8FE;} .d2-803513315 .stroke-AB5{stroke:#F7F8FE;}
.d2-524372316 .background-color-N1{background-color:#0A0F25;} .d2-803513315 .background-color-N1{background-color:#0A0F25;}
.d2-524372316 .background-color-N2{background-color:#676C7E;} .d2-803513315 .background-color-N2{background-color:#676C7E;}
.d2-524372316 .background-color-N3{background-color:#9499AB;} .d2-803513315 .background-color-N3{background-color:#9499AB;}
.d2-524372316 .background-color-N4{background-color:#CFD2DD;} .d2-803513315 .background-color-N4{background-color:#CFD2DD;}
.d2-524372316 .background-color-N5{background-color:#DEE1EB;} .d2-803513315 .background-color-N5{background-color:#DEE1EB;}
.d2-524372316 .background-color-N6{background-color:#EEF1F8;} .d2-803513315 .background-color-N6{background-color:#EEF1F8;}
.d2-524372316 .background-color-N7{background-color:#FFFFFF;} .d2-803513315 .background-color-N7{background-color:#FFFFFF;}
.d2-524372316 .background-color-B1{background-color:#0D32B2;} .d2-803513315 .background-color-B1{background-color:#0D32B2;}
.d2-524372316 .background-color-B2{background-color:#0D32B2;} .d2-803513315 .background-color-B2{background-color:#0D32B2;}
.d2-524372316 .background-color-B3{background-color:#E3E9FD;} .d2-803513315 .background-color-B3{background-color:#E3E9FD;}
.d2-524372316 .background-color-B4{background-color:#E3E9FD;} .d2-803513315 .background-color-B4{background-color:#E3E9FD;}
.d2-524372316 .background-color-B5{background-color:#EDF0FD;} .d2-803513315 .background-color-B5{background-color:#EDF0FD;}
.d2-524372316 .background-color-B6{background-color:#F7F8FE;} .d2-803513315 .background-color-B6{background-color:#F7F8FE;}
.d2-524372316 .background-color-AA2{background-color:#4A6FF3;} .d2-803513315 .background-color-AA2{background-color:#4A6FF3;}
.d2-524372316 .background-color-AA4{background-color:#EDF0FD;} .d2-803513315 .background-color-AA4{background-color:#EDF0FD;}
.d2-524372316 .background-color-AA5{background-color:#F7F8FE;} .d2-803513315 .background-color-AA5{background-color:#F7F8FE;}
.d2-524372316 .background-color-AB4{background-color:#EDF0FD;} .d2-803513315 .background-color-AB4{background-color:#EDF0FD;}
.d2-524372316 .background-color-AB5{background-color:#F7F8FE;} .d2-803513315 .background-color-AB5{background-color:#F7F8FE;}
.d2-524372316 .color-N1{color:#0A0F25;} .d2-803513315 .color-N1{color:#0A0F25;}
.d2-524372316 .color-N2{color:#676C7E;} .d2-803513315 .color-N2{color:#676C7E;}
.d2-524372316 .color-N3{color:#9499AB;} .d2-803513315 .color-N3{color:#9499AB;}
.d2-524372316 .color-N4{color:#CFD2DD;} .d2-803513315 .color-N4{color:#CFD2DD;}
.d2-524372316 .color-N5{color:#DEE1EB;} .d2-803513315 .color-N5{color:#DEE1EB;}
.d2-524372316 .color-N6{color:#EEF1F8;} .d2-803513315 .color-N6{color:#EEF1F8;}
.d2-524372316 .color-N7{color:#FFFFFF;} .d2-803513315 .color-N7{color:#FFFFFF;}
.d2-524372316 .color-B1{color:#0D32B2;} .d2-803513315 .color-B1{color:#0D32B2;}
.d2-524372316 .color-B2{color:#0D32B2;} .d2-803513315 .color-B2{color:#0D32B2;}
.d2-524372316 .color-B3{color:#E3E9FD;} .d2-803513315 .color-B3{color:#E3E9FD;}
.d2-524372316 .color-B4{color:#E3E9FD;} .d2-803513315 .color-B4{color:#E3E9FD;}
.d2-524372316 .color-B5{color:#EDF0FD;} .d2-803513315 .color-B5{color:#EDF0FD;}
.d2-524372316 .color-B6{color:#F7F8FE;} .d2-803513315 .color-B6{color:#F7F8FE;}
.d2-524372316 .color-AA2{color:#4A6FF3;} .d2-803513315 .color-AA2{color:#4A6FF3;}
.d2-524372316 .color-AA4{color:#EDF0FD;} .d2-803513315 .color-AA4{color:#EDF0FD;}
.d2-524372316 .color-AA5{color:#F7F8FE;} .d2-803513315 .color-AA5{color:#F7F8FE;}
.d2-524372316 .color-AB4{color:#EDF0FD;} .d2-803513315 .color-AB4{color:#EDF0FD;}
.d2-524372316 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-524372316)" /></g><mask id="d2-524372316" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434"> .d2-803513315 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-803513315)" /></g><mask id="d2-803513315" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434">
<rect x="-101" y="-101" width="256" height="434" fill="white"></rect> <rect x="-101" y="-101" width="256" height="434" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-118346165" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-2065426295" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-118346165 .text-bold { .d2-2065426295 .text-bold {
font-family: "d2-118346165-font-bold"; font-family: "d2-2065426295-font-bold";
} }
@font-face { @font-face {
font-family: d2-118346165-font-bold; font-family: d2-2065426295-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-118346165 .fill-N1{fill:#0A0F25;} .d2-2065426295 .fill-N1{fill:#0A0F25;}
.d2-118346165 .fill-N2{fill:#676C7E;} .d2-2065426295 .fill-N2{fill:#676C7E;}
.d2-118346165 .fill-N3{fill:#9499AB;} .d2-2065426295 .fill-N3{fill:#9499AB;}
.d2-118346165 .fill-N4{fill:#CFD2DD;} .d2-2065426295 .fill-N4{fill:#CFD2DD;}
.d2-118346165 .fill-N5{fill:#DEE1EB;} .d2-2065426295 .fill-N5{fill:#DEE1EB;}
.d2-118346165 .fill-N6{fill:#EEF1F8;} .d2-2065426295 .fill-N6{fill:#EEF1F8;}
.d2-118346165 .fill-N7{fill:#FFFFFF;} .d2-2065426295 .fill-N7{fill:#FFFFFF;}
.d2-118346165 .fill-B1{fill:#0D32B2;} .d2-2065426295 .fill-B1{fill:#0D32B2;}
.d2-118346165 .fill-B2{fill:#0D32B2;} .d2-2065426295 .fill-B2{fill:#0D32B2;}
.d2-118346165 .fill-B3{fill:#E3E9FD;} .d2-2065426295 .fill-B3{fill:#E3E9FD;}
.d2-118346165 .fill-B4{fill:#E3E9FD;} .d2-2065426295 .fill-B4{fill:#E3E9FD;}
.d2-118346165 .fill-B5{fill:#EDF0FD;} .d2-2065426295 .fill-B5{fill:#EDF0FD;}
.d2-118346165 .fill-B6{fill:#F7F8FE;} .d2-2065426295 .fill-B6{fill:#F7F8FE;}
.d2-118346165 .fill-AA2{fill:#4A6FF3;} .d2-2065426295 .fill-AA2{fill:#4A6FF3;}
.d2-118346165 .fill-AA4{fill:#EDF0FD;} .d2-2065426295 .fill-AA4{fill:#EDF0FD;}
.d2-118346165 .fill-AA5{fill:#F7F8FE;} .d2-2065426295 .fill-AA5{fill:#F7F8FE;}
.d2-118346165 .fill-AB4{fill:#EDF0FD;} .d2-2065426295 .fill-AB4{fill:#EDF0FD;}
.d2-118346165 .fill-AB5{fill:#F7F8FE;} .d2-2065426295 .fill-AB5{fill:#F7F8FE;}
.d2-118346165 .stroke-N1{stroke:#0A0F25;} .d2-2065426295 .stroke-N1{stroke:#0A0F25;}
.d2-118346165 .stroke-N2{stroke:#676C7E;} .d2-2065426295 .stroke-N2{stroke:#676C7E;}
.d2-118346165 .stroke-N3{stroke:#9499AB;} .d2-2065426295 .stroke-N3{stroke:#9499AB;}
.d2-118346165 .stroke-N4{stroke:#CFD2DD;} .d2-2065426295 .stroke-N4{stroke:#CFD2DD;}
.d2-118346165 .stroke-N5{stroke:#DEE1EB;} .d2-2065426295 .stroke-N5{stroke:#DEE1EB;}
.d2-118346165 .stroke-N6{stroke:#EEF1F8;} .d2-2065426295 .stroke-N6{stroke:#EEF1F8;}
.d2-118346165 .stroke-N7{stroke:#FFFFFF;} .d2-2065426295 .stroke-N7{stroke:#FFFFFF;}
.d2-118346165 .stroke-B1{stroke:#0D32B2;} .d2-2065426295 .stroke-B1{stroke:#0D32B2;}
.d2-118346165 .stroke-B2{stroke:#0D32B2;} .d2-2065426295 .stroke-B2{stroke:#0D32B2;}
.d2-118346165 .stroke-B3{stroke:#E3E9FD;} .d2-2065426295 .stroke-B3{stroke:#E3E9FD;}
.d2-118346165 .stroke-B4{stroke:#E3E9FD;} .d2-2065426295 .stroke-B4{stroke:#E3E9FD;}
.d2-118346165 .stroke-B5{stroke:#EDF0FD;} .d2-2065426295 .stroke-B5{stroke:#EDF0FD;}
.d2-118346165 .stroke-B6{stroke:#F7F8FE;} .d2-2065426295 .stroke-B6{stroke:#F7F8FE;}
.d2-118346165 .stroke-AA2{stroke:#4A6FF3;} .d2-2065426295 .stroke-AA2{stroke:#4A6FF3;}
.d2-118346165 .stroke-AA4{stroke:#EDF0FD;} .d2-2065426295 .stroke-AA4{stroke:#EDF0FD;}
.d2-118346165 .stroke-AA5{stroke:#F7F8FE;} .d2-2065426295 .stroke-AA5{stroke:#F7F8FE;}
.d2-118346165 .stroke-AB4{stroke:#EDF0FD;} .d2-2065426295 .stroke-AB4{stroke:#EDF0FD;}
.d2-118346165 .stroke-AB5{stroke:#F7F8FE;} .d2-2065426295 .stroke-AB5{stroke:#F7F8FE;}
.d2-118346165 .background-color-N1{background-color:#0A0F25;} .d2-2065426295 .background-color-N1{background-color:#0A0F25;}
.d2-118346165 .background-color-N2{background-color:#676C7E;} .d2-2065426295 .background-color-N2{background-color:#676C7E;}
.d2-118346165 .background-color-N3{background-color:#9499AB;} .d2-2065426295 .background-color-N3{background-color:#9499AB;}
.d2-118346165 .background-color-N4{background-color:#CFD2DD;} .d2-2065426295 .background-color-N4{background-color:#CFD2DD;}
.d2-118346165 .background-color-N5{background-color:#DEE1EB;} .d2-2065426295 .background-color-N5{background-color:#DEE1EB;}
.d2-118346165 .background-color-N6{background-color:#EEF1F8;} .d2-2065426295 .background-color-N6{background-color:#EEF1F8;}
.d2-118346165 .background-color-N7{background-color:#FFFFFF;} .d2-2065426295 .background-color-N7{background-color:#FFFFFF;}
.d2-118346165 .background-color-B1{background-color:#0D32B2;} .d2-2065426295 .background-color-B1{background-color:#0D32B2;}
.d2-118346165 .background-color-B2{background-color:#0D32B2;} .d2-2065426295 .background-color-B2{background-color:#0D32B2;}
.d2-118346165 .background-color-B3{background-color:#E3E9FD;} .d2-2065426295 .background-color-B3{background-color:#E3E9FD;}
.d2-118346165 .background-color-B4{background-color:#E3E9FD;} .d2-2065426295 .background-color-B4{background-color:#E3E9FD;}
.d2-118346165 .background-color-B5{background-color:#EDF0FD;} .d2-2065426295 .background-color-B5{background-color:#EDF0FD;}
.d2-118346165 .background-color-B6{background-color:#F7F8FE;} .d2-2065426295 .background-color-B6{background-color:#F7F8FE;}
.d2-118346165 .background-color-AA2{background-color:#4A6FF3;} .d2-2065426295 .background-color-AA2{background-color:#4A6FF3;}
.d2-118346165 .background-color-AA4{background-color:#EDF0FD;} .d2-2065426295 .background-color-AA4{background-color:#EDF0FD;}
.d2-118346165 .background-color-AA5{background-color:#F7F8FE;} .d2-2065426295 .background-color-AA5{background-color:#F7F8FE;}
.d2-118346165 .background-color-AB4{background-color:#EDF0FD;} .d2-2065426295 .background-color-AB4{background-color:#EDF0FD;}
.d2-118346165 .background-color-AB5{background-color:#F7F8FE;} .d2-2065426295 .background-color-AB5{background-color:#F7F8FE;}
.d2-118346165 .color-N1{color:#0A0F25;} .d2-2065426295 .color-N1{color:#0A0F25;}
.d2-118346165 .color-N2{color:#676C7E;} .d2-2065426295 .color-N2{color:#676C7E;}
.d2-118346165 .color-N3{color:#9499AB;} .d2-2065426295 .color-N3{color:#9499AB;}
.d2-118346165 .color-N4{color:#CFD2DD;} .d2-2065426295 .color-N4{color:#CFD2DD;}
.d2-118346165 .color-N5{color:#DEE1EB;} .d2-2065426295 .color-N5{color:#DEE1EB;}
.d2-118346165 .color-N6{color:#EEF1F8;} .d2-2065426295 .color-N6{color:#EEF1F8;}
.d2-118346165 .color-N7{color:#FFFFFF;} .d2-2065426295 .color-N7{color:#FFFFFF;}
.d2-118346165 .color-B1{color:#0D32B2;} .d2-2065426295 .color-B1{color:#0D32B2;}
.d2-118346165 .color-B2{color:#0D32B2;} .d2-2065426295 .color-B2{color:#0D32B2;}
.d2-118346165 .color-B3{color:#E3E9FD;} .d2-2065426295 .color-B3{color:#E3E9FD;}
.d2-118346165 .color-B4{color:#E3E9FD;} .d2-2065426295 .color-B4{color:#E3E9FD;}
.d2-118346165 .color-B5{color:#EDF0FD;} .d2-2065426295 .color-B5{color:#EDF0FD;}
.d2-118346165 .color-B6{color:#F7F8FE;} .d2-2065426295 .color-B6{color:#F7F8FE;}
.d2-118346165 .color-AA2{color:#4A6FF3;} .d2-2065426295 .color-AA2{color:#4A6FF3;}
.d2-118346165 .color-AA4{color:#EDF0FD;} .d2-2065426295 .color-AA4{color:#EDF0FD;}
.d2-118346165 .color-AA5{color:#F7F8FE;} .d2-2065426295 .color-AA5{color:#F7F8FE;}
.d2-118346165 .color-AB4{color:#EDF0FD;} .d2-2065426295 .color-AB4{color:#EDF0FD;}
.d2-118346165 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 22.784863 67.985640 C 18.204819 106.000000 18.200000 126.000000 22.523419 162.028493" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-118346165)" /></g><g id="(y -&gt; x)[0]"><path d="M 31.215137 164.014360 C 35.795181 126.000000 35.800000 106.000000 31.476581 69.971507" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-118346165)" /></g><mask id="d2-118346165" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434"> .d2-2065426295 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 22.784863 67.985640 C 18.204819 106.000000 18.200000 126.000000 22.523419 162.028493" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2065426295)" /></g><g id="(y -&gt; x)[0]"><path d="M 31.215137 164.014360 C 35.795181 126.000000 35.800000 106.000000 31.476581 69.971507" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2065426295)" /></g><mask id="d2-2065426295" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434">
<rect x="-101" y="-101" width="256" height="434" fill="white"></rect> <rect x="-101" y="-101" width="256" height="434" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 9.5 KiB

After

Width:  |  Height:  |  Size: 9.6 KiB

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-2448830429" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 256 434"><svg id="d2-svg" class="d2-855222762" width="256" height="434" viewBox="-101 -101 256 434"><rect x="-101.000000" y="-101.000000" width="256.000000" height="434.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-2448830429 .text-bold { .d2-855222762 .text-bold {
font-family: "d2-2448830429-font-bold"; font-family: "d2-855222762-font-bold";
} }
@font-face { @font-face {
font-family: d2-2448830429-font-bold; font-family: d2-855222762-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-2448830429 .fill-N1{fill:#0A0F25;} .d2-855222762 .fill-N1{fill:#0A0F25;}
.d2-2448830429 .fill-N2{fill:#676C7E;} .d2-855222762 .fill-N2{fill:#676C7E;}
.d2-2448830429 .fill-N3{fill:#9499AB;} .d2-855222762 .fill-N3{fill:#9499AB;}
.d2-2448830429 .fill-N4{fill:#CFD2DD;} .d2-855222762 .fill-N4{fill:#CFD2DD;}
.d2-2448830429 .fill-N5{fill:#DEE1EB;} .d2-855222762 .fill-N5{fill:#DEE1EB;}
.d2-2448830429 .fill-N6{fill:#EEF1F8;} .d2-855222762 .fill-N6{fill:#EEF1F8;}
.d2-2448830429 .fill-N7{fill:#FFFFFF;} .d2-855222762 .fill-N7{fill:#FFFFFF;}
.d2-2448830429 .fill-B1{fill:#0D32B2;} .d2-855222762 .fill-B1{fill:#0D32B2;}
.d2-2448830429 .fill-B2{fill:#0D32B2;} .d2-855222762 .fill-B2{fill:#0D32B2;}
.d2-2448830429 .fill-B3{fill:#E3E9FD;} .d2-855222762 .fill-B3{fill:#E3E9FD;}
.d2-2448830429 .fill-B4{fill:#E3E9FD;} .d2-855222762 .fill-B4{fill:#E3E9FD;}
.d2-2448830429 .fill-B5{fill:#EDF0FD;} .d2-855222762 .fill-B5{fill:#EDF0FD;}
.d2-2448830429 .fill-B6{fill:#F7F8FE;} .d2-855222762 .fill-B6{fill:#F7F8FE;}
.d2-2448830429 .fill-AA2{fill:#4A6FF3;} .d2-855222762 .fill-AA2{fill:#4A6FF3;}
.d2-2448830429 .fill-AA4{fill:#EDF0FD;} .d2-855222762 .fill-AA4{fill:#EDF0FD;}
.d2-2448830429 .fill-AA5{fill:#F7F8FE;} .d2-855222762 .fill-AA5{fill:#F7F8FE;}
.d2-2448830429 .fill-AB4{fill:#EDF0FD;} .d2-855222762 .fill-AB4{fill:#EDF0FD;}
.d2-2448830429 .fill-AB5{fill:#F7F8FE;} .d2-855222762 .fill-AB5{fill:#F7F8FE;}
.d2-2448830429 .stroke-N1{stroke:#0A0F25;} .d2-855222762 .stroke-N1{stroke:#0A0F25;}
.d2-2448830429 .stroke-N2{stroke:#676C7E;} .d2-855222762 .stroke-N2{stroke:#676C7E;}
.d2-2448830429 .stroke-N3{stroke:#9499AB;} .d2-855222762 .stroke-N3{stroke:#9499AB;}
.d2-2448830429 .stroke-N4{stroke:#CFD2DD;} .d2-855222762 .stroke-N4{stroke:#CFD2DD;}
.d2-2448830429 .stroke-N5{stroke:#DEE1EB;} .d2-855222762 .stroke-N5{stroke:#DEE1EB;}
.d2-2448830429 .stroke-N6{stroke:#EEF1F8;} .d2-855222762 .stroke-N6{stroke:#EEF1F8;}
.d2-2448830429 .stroke-N7{stroke:#FFFFFF;} .d2-855222762 .stroke-N7{stroke:#FFFFFF;}
.d2-2448830429 .stroke-B1{stroke:#0D32B2;} .d2-855222762 .stroke-B1{stroke:#0D32B2;}
.d2-2448830429 .stroke-B2{stroke:#0D32B2;} .d2-855222762 .stroke-B2{stroke:#0D32B2;}
.d2-2448830429 .stroke-B3{stroke:#E3E9FD;} .d2-855222762 .stroke-B3{stroke:#E3E9FD;}
.d2-2448830429 .stroke-B4{stroke:#E3E9FD;} .d2-855222762 .stroke-B4{stroke:#E3E9FD;}
.d2-2448830429 .stroke-B5{stroke:#EDF0FD;} .d2-855222762 .stroke-B5{stroke:#EDF0FD;}
.d2-2448830429 .stroke-B6{stroke:#F7F8FE;} .d2-855222762 .stroke-B6{stroke:#F7F8FE;}
.d2-2448830429 .stroke-AA2{stroke:#4A6FF3;} .d2-855222762 .stroke-AA2{stroke:#4A6FF3;}
.d2-2448830429 .stroke-AA4{stroke:#EDF0FD;} .d2-855222762 .stroke-AA4{stroke:#EDF0FD;}
.d2-2448830429 .stroke-AA5{stroke:#F7F8FE;} .d2-855222762 .stroke-AA5{stroke:#F7F8FE;}
.d2-2448830429 .stroke-AB4{stroke:#EDF0FD;} .d2-855222762 .stroke-AB4{stroke:#EDF0FD;}
.d2-2448830429 .stroke-AB5{stroke:#F7F8FE;} .d2-855222762 .stroke-AB5{stroke:#F7F8FE;}
.d2-2448830429 .background-color-N1{background-color:#0A0F25;} .d2-855222762 .background-color-N1{background-color:#0A0F25;}
.d2-2448830429 .background-color-N2{background-color:#676C7E;} .d2-855222762 .background-color-N2{background-color:#676C7E;}
.d2-2448830429 .background-color-N3{background-color:#9499AB;} .d2-855222762 .background-color-N3{background-color:#9499AB;}
.d2-2448830429 .background-color-N4{background-color:#CFD2DD;} .d2-855222762 .background-color-N4{background-color:#CFD2DD;}
.d2-2448830429 .background-color-N5{background-color:#DEE1EB;} .d2-855222762 .background-color-N5{background-color:#DEE1EB;}
.d2-2448830429 .background-color-N6{background-color:#EEF1F8;} .d2-855222762 .background-color-N6{background-color:#EEF1F8;}
.d2-2448830429 .background-color-N7{background-color:#FFFFFF;} .d2-855222762 .background-color-N7{background-color:#FFFFFF;}
.d2-2448830429 .background-color-B1{background-color:#0D32B2;} .d2-855222762 .background-color-B1{background-color:#0D32B2;}
.d2-2448830429 .background-color-B2{background-color:#0D32B2;} .d2-855222762 .background-color-B2{background-color:#0D32B2;}
.d2-2448830429 .background-color-B3{background-color:#E3E9FD;} .d2-855222762 .background-color-B3{background-color:#E3E9FD;}
.d2-2448830429 .background-color-B4{background-color:#E3E9FD;} .d2-855222762 .background-color-B4{background-color:#E3E9FD;}
.d2-2448830429 .background-color-B5{background-color:#EDF0FD;} .d2-855222762 .background-color-B5{background-color:#EDF0FD;}
.d2-2448830429 .background-color-B6{background-color:#F7F8FE;} .d2-855222762 .background-color-B6{background-color:#F7F8FE;}
.d2-2448830429 .background-color-AA2{background-color:#4A6FF3;} .d2-855222762 .background-color-AA2{background-color:#4A6FF3;}
.d2-2448830429 .background-color-AA4{background-color:#EDF0FD;} .d2-855222762 .background-color-AA4{background-color:#EDF0FD;}
.d2-2448830429 .background-color-AA5{background-color:#F7F8FE;} .d2-855222762 .background-color-AA5{background-color:#F7F8FE;}
.d2-2448830429 .background-color-AB4{background-color:#EDF0FD;} .d2-855222762 .background-color-AB4{background-color:#EDF0FD;}
.d2-2448830429 .background-color-AB5{background-color:#F7F8FE;} .d2-855222762 .background-color-AB5{background-color:#F7F8FE;}
.d2-2448830429 .color-N1{color:#0A0F25;} .d2-855222762 .color-N1{color:#0A0F25;}
.d2-2448830429 .color-N2{color:#676C7E;} .d2-855222762 .color-N2{color:#676C7E;}
.d2-2448830429 .color-N3{color:#9499AB;} .d2-855222762 .color-N3{color:#9499AB;}
.d2-2448830429 .color-N4{color:#CFD2DD;} .d2-855222762 .color-N4{color:#CFD2DD;}
.d2-2448830429 .color-N5{color:#DEE1EB;} .d2-855222762 .color-N5{color:#DEE1EB;}
.d2-2448830429 .color-N6{color:#EEF1F8;} .d2-855222762 .color-N6{color:#EEF1F8;}
.d2-2448830429 .color-N7{color:#FFFFFF;} .d2-855222762 .color-N7{color:#FFFFFF;}
.d2-2448830429 .color-B1{color:#0D32B2;} .d2-855222762 .color-B1{color:#0D32B2;}
.d2-2448830429 .color-B2{color:#0D32B2;} .d2-855222762 .color-B2{color:#0D32B2;}
.d2-2448830429 .color-B3{color:#E3E9FD;} .d2-855222762 .color-B3{color:#E3E9FD;}
.d2-2448830429 .color-B4{color:#E3E9FD;} .d2-855222762 .color-B4{color:#E3E9FD;}
.d2-2448830429 .color-B5{color:#EDF0FD;} .d2-855222762 .color-B5{color:#EDF0FD;}
.d2-2448830429 .color-B6{color:#F7F8FE;} .d2-855222762 .color-B6{color:#F7F8FE;}
.d2-2448830429 .color-AA2{color:#4A6FF3;} .d2-855222762 .color-AA2{color:#4A6FF3;}
.d2-2448830429 .color-AA4{color:#EDF0FD;} .d2-855222762 .color-AA4{color:#EDF0FD;}
.d2-2448830429 .color-AA5{color:#F7F8FE;} .d2-855222762 .color-AA5{color:#F7F8FE;}
.d2-2448830429 .color-AB4{color:#EDF0FD;} .d2-855222762 .color-AB4{color:#EDF0FD;}
.d2-2448830429 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2448830429)" /></g><mask id="d2-2448830429" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434"> .d2-855222762 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="1.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 27.000000 68.000000 C 27.000000 106.000000 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-855222762)" /></g><mask id="d2-855222762" maskUnits="userSpaceOnUse" x="-101" y="-101" width="256" height="434">
<rect x="-101" y="-101" width="256" height="434" fill="white"></rect> <rect x="-101" y="-101" width="256" height="434" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View file

@ -703,6 +703,220 @@ And other normal markdown stuff
one one
two two
} }
`,
},
{
name: "long_arrowhead_label",
script: `
a -> b: {
target-arrowhead: "a to b with unexpectedly long target arrowhead label"
}
`,
},
{
name: "arrowhead_sizes_with_labels",
script: `
triangle: {
a <-> b: {
source-arrowhead: 1
target-arrowhead: 1
}
c <-> d: {
source-arrowhead: 1
target-arrowhead: 1
style.stroke-width: 8
}
}
none: {
a -- b: {
source-arrowhead: 1
target-arrowhead: 1
}
c -- d: {
source-arrowhead: 1
target-arrowhead: 1
style.stroke-width: 8
}
}
arrow: {
a <-> b: {
source-arrowhead: 1 {
shape: arrow
}
target-arrowhead: 1 {
shape: arrow
}
}
c <-> d: {
source-arrowhead: 1 {
shape: arrow
}
target-arrowhead: 1 {
shape: arrow
}
style.stroke-width: 8
}
}
diamond: {
a <-> b: {
source-arrowhead: 1 {
shape: diamond
}
target-arrowhead: 1 {
shape: diamond
}
}
c <-> d: {
source-arrowhead: 1 {
shape: diamond
}
target-arrowhead: 1 {
shape: diamond
}
style.stroke-width: 8
}
}
filled diamond: {
a <-> b: {
source-arrowhead: 1 {
shape: diamond
style.filled: true
}
target-arrowhead: 1 {
shape: diamond
style.filled: true
}
}
c <-> d: {
source-arrowhead: 1 {
shape: diamond
style.filled: true
}
target-arrowhead: 1 {
shape: diamond
style.filled: true
}
style.stroke-width: 8
}
}
circle: {
a <-> b: {
source-arrowhead: 1 {
shape: circle
}
target-arrowhead: 1 {
shape: circle
}
}
c <-> d: {
source-arrowhead: 1 {
shape: circle
}
target-arrowhead: 1 {
shape: circle
}
style.stroke-width: 8
}
}
filled circle: {
a <-> b: {
source-arrowhead: 1 {
shape: circle
style.filled: true
}
target-arrowhead: 1 {
shape: circle
style.filled: true
}
}
c <-> d: {
source-arrowhead: 1 {
shape: circle
style.filled: true
}
target-arrowhead: 1 {
shape: circle
style.filled: true
}
style.stroke-width: 8
}
}
cf one: {
a <-> b: {
source-arrowhead: 1 {
shape: cf-one
}
target-arrowhead: 1 {
shape: cf-one
}
}
c <-> d: {
source-arrowhead: 1 {
shape: cf-one
}
target-arrowhead: 1 {
shape: cf-one
}
style.stroke-width: 8
}
}
cf one required: {
a <-> b: {
source-arrowhead: 1 {
shape: cf-one-required
}
target-arrowhead: 1 {
shape: cf-one-required
}
}
c <-> d: {
source-arrowhead: 1 {
shape: cf-one-required
}
target-arrowhead: 1 {
shape: cf-one-required
}
style.stroke-width: 8
}
}
cf many: {
a <-> b: {
source-arrowhead: 1 {
shape: cf-many
}
target-arrowhead: 1 {
shape: cf-many
}
}
c <-> d: {
source-arrowhead: 1 {
shape: cf-many
}
target-arrowhead: 1 {
shape: cf-many
}
style.stroke-width: 8
}
}
cf many required: {
a <-> b: {
source-arrowhead: 1 {
shape: cf-many-required
}
target-arrowhead: 1 {
shape: cf-many-required
}
}
c <-> d: {
source-arrowhead: 1 {
shape: cf-many-required
}
target-arrowhead: 1 {
shape: cf-many-required
}
style.stroke-width: 8
}
}
`, `,
}, },
} }

View file

@ -723,10 +723,8 @@
"id": "(rectangle -> square)[0]", "id": "(rectangle -> square)[0]",
"src": "rectangle", "src": "rectangle",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "square", "dst": "square",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -772,10 +770,8 @@
"id": "(square -> page)[0]", "id": "(square -> page)[0]",
"src": "square", "src": "square",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "page", "dst": "page",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -821,10 +817,8 @@
"id": "(parallelogram -> document)[0]", "id": "(parallelogram -> document)[0]",
"src": "parallelogram", "src": "parallelogram",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "document", "dst": "document",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -870,10 +864,8 @@
"id": "(document -> cylinder)[0]", "id": "(document -> cylinder)[0]",
"src": "document", "src": "document",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "cylinder", "dst": "cylinder",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -919,10 +911,8 @@
"id": "(queue -> package)[0]", "id": "(queue -> package)[0]",
"src": "queue", "src": "queue",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "package", "dst": "package",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -968,10 +958,8 @@
"id": "(package -> step)[0]", "id": "(package -> step)[0]",
"src": "package", "src": "package",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "step", "dst": "step",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1017,10 +1005,8 @@
"id": "(callout -> stored_data)[0]", "id": "(callout -> stored_data)[0]",
"src": "callout", "src": "callout",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "stored_data", "dst": "stored_data",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1066,10 +1052,8 @@
"id": "(stored_data -> person)[0]", "id": "(stored_data -> person)[0]",
"src": "stored_data", "src": "stored_data",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "person", "dst": "person",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1115,10 +1099,8 @@
"id": "(diamond -> oval)[0]", "id": "(diamond -> oval)[0]",
"src": "diamond", "src": "diamond",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "oval", "dst": "oval",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1164,10 +1146,8 @@
"id": "(oval -> circle)[0]", "id": "(oval -> circle)[0]",
"src": "oval", "src": "oval",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "circle", "dst": "circle",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1213,10 +1193,8 @@
"id": "(hexagon -> cloud)[0]", "id": "(hexagon -> cloud)[0]",
"src": "hexagon", "src": "hexagon",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "cloud", "dst": "cloud",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

View file

@ -723,10 +723,8 @@
"id": "(rectangle -> square)[0]", "id": "(rectangle -> square)[0]",
"src": "rectangle", "src": "rectangle",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "square", "dst": "square",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -772,10 +770,8 @@
"id": "(square -> page)[0]", "id": "(square -> page)[0]",
"src": "square", "src": "square",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "page", "dst": "page",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -821,10 +817,8 @@
"id": "(parallelogram -> document)[0]", "id": "(parallelogram -> document)[0]",
"src": "parallelogram", "src": "parallelogram",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "document", "dst": "document",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -870,10 +864,8 @@
"id": "(document -> cylinder)[0]", "id": "(document -> cylinder)[0]",
"src": "document", "src": "document",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "cylinder", "dst": "cylinder",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -919,10 +911,8 @@
"id": "(queue -> package)[0]", "id": "(queue -> package)[0]",
"src": "queue", "src": "queue",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "package", "dst": "package",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -968,10 +958,8 @@
"id": "(package -> step)[0]", "id": "(package -> step)[0]",
"src": "package", "src": "package",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "step", "dst": "step",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1017,10 +1005,8 @@
"id": "(callout -> stored_data)[0]", "id": "(callout -> stored_data)[0]",
"src": "callout", "src": "callout",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "stored_data", "dst": "stored_data",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1066,10 +1052,8 @@
"id": "(stored_data -> person)[0]", "id": "(stored_data -> person)[0]",
"src": "stored_data", "src": "stored_data",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "person", "dst": "person",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1115,10 +1099,8 @@
"id": "(diamond -> oval)[0]", "id": "(diamond -> oval)[0]",
"src": "diamond", "src": "diamond",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "oval", "dst": "oval",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1164,10 +1146,8 @@
"id": "(oval -> circle)[0]", "id": "(oval -> circle)[0]",
"src": "oval", "src": "oval",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "circle", "dst": "circle",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1213,10 +1193,8 @@
"id": "(hexagon -> cloud)[0]", "id": "(hexagon -> cloud)[0]",
"src": "hexagon", "src": "hexagon",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "cloud", "dst": "cloud",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View file

@ -723,10 +723,8 @@
"id": "(rectangle -> square)[0]", "id": "(rectangle -> square)[0]",
"src": "rectangle", "src": "rectangle",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "square", "dst": "square",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -772,10 +770,8 @@
"id": "(square -> page)[0]", "id": "(square -> page)[0]",
"src": "square", "src": "square",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "page", "dst": "page",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -821,10 +817,8 @@
"id": "(parallelogram -> document)[0]", "id": "(parallelogram -> document)[0]",
"src": "parallelogram", "src": "parallelogram",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "document", "dst": "document",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -870,10 +864,8 @@
"id": "(document -> cylinder)[0]", "id": "(document -> cylinder)[0]",
"src": "document", "src": "document",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "cylinder", "dst": "cylinder",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -919,10 +911,8 @@
"id": "(queue -> package)[0]", "id": "(queue -> package)[0]",
"src": "queue", "src": "queue",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "package", "dst": "package",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -968,10 +958,8 @@
"id": "(package -> step)[0]", "id": "(package -> step)[0]",
"src": "package", "src": "package",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "step", "dst": "step",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1017,10 +1005,8 @@
"id": "(callout -> stored_data)[0]", "id": "(callout -> stored_data)[0]",
"src": "callout", "src": "callout",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "stored_data", "dst": "stored_data",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1066,10 +1052,8 @@
"id": "(stored_data -> person)[0]", "id": "(stored_data -> person)[0]",
"src": "stored_data", "src": "stored_data",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "person", "dst": "person",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1115,10 +1099,8 @@
"id": "(diamond -> oval)[0]", "id": "(diamond -> oval)[0]",
"src": "diamond", "src": "diamond",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "oval", "dst": "oval",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1164,10 +1146,8 @@
"id": "(oval -> circle)[0]", "id": "(oval -> circle)[0]",
"src": "oval", "src": "oval",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "circle", "dst": "circle",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1213,10 +1193,8 @@
"id": "(hexagon -> cloud)[0]", "id": "(hexagon -> cloud)[0]",
"src": "hexagon", "src": "hexagon",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "cloud", "dst": "cloud",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 448 KiB

After

Width:  |  Height:  |  Size: 448 KiB

View file

@ -489,10 +489,8 @@
"id": "NETWORK.CELL TOWER.(satellites -> transmitter)[0]", "id": "NETWORK.CELL TOWER.(satellites -> transmitter)[0]",
"src": "NETWORK.CELL TOWER.satellites", "src": "NETWORK.CELL TOWER.satellites",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "NETWORK.CELL TOWER.transmitter", "dst": "NETWORK.CELL TOWER.transmitter",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -538,10 +536,8 @@
"id": "NETWORK.CELL TOWER.(satellites -> transmitter)[1]", "id": "NETWORK.CELL TOWER.(satellites -> transmitter)[1]",
"src": "NETWORK.CELL TOWER.satellites", "src": "NETWORK.CELL TOWER.satellites",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "NETWORK.CELL TOWER.transmitter", "dst": "NETWORK.CELL TOWER.transmitter",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -587,10 +583,8 @@
"id": "NETWORK.CELL TOWER.(satellites -> transmitter)[2]", "id": "NETWORK.CELL TOWER.(satellites -> transmitter)[2]",
"src": "NETWORK.CELL TOWER.satellites", "src": "NETWORK.CELL TOWER.satellites",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "NETWORK.CELL TOWER.transmitter", "dst": "NETWORK.CELL TOWER.transmitter",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -636,10 +630,8 @@
"id": "(costumes -> monsters)[0]", "id": "(costumes -> monsters)[0]",
"src": "costumes", "src": "costumes",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "monsters", "dst": "monsters",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 61 KiB

View file

@ -175,10 +175,8 @@
"id": "NETWORK.CELL TOWER.(satellites -> transmitter)[0]", "id": "NETWORK.CELL TOWER.(satellites -> transmitter)[0]",
"src": "NETWORK.CELL TOWER.satellites", "src": "NETWORK.CELL TOWER.satellites",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "NETWORK.CELL TOWER.transmitter", "dst": "NETWORK.CELL TOWER.transmitter",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -224,10 +222,8 @@
"id": "NETWORK.CELL TOWER.(satellites -> transmitter)[1]", "id": "NETWORK.CELL TOWER.(satellites -> transmitter)[1]",
"src": "NETWORK.CELL TOWER.satellites", "src": "NETWORK.CELL TOWER.satellites",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "NETWORK.CELL TOWER.transmitter", "dst": "NETWORK.CELL TOWER.transmitter",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -273,10 +269,8 @@
"id": "NETWORK.CELL TOWER.(satellites -> transmitter)[2]", "id": "NETWORK.CELL TOWER.(satellites -> transmitter)[2]",
"src": "NETWORK.CELL TOWER.satellites", "src": "NETWORK.CELL TOWER.satellites",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "NETWORK.CELL TOWER.transmitter", "dst": "NETWORK.CELL TOWER.transmitter",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

View file

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 362 454"><svg id="d2-svg" class="d2-3084549463" width="362" height="454" viewBox="-1 0 362 454"><rect x="-1.000000" y="0.000000" width="362.000000" height="454.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 362 454"><svg id="d2-svg" class="d2-2819207500" width="362" height="454" viewBox="-1 0 362 454"><rect x="-1.000000" y="0.000000" width="362.000000" height="454.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-3084549463 .text-mono { .d2-2819207500 .text-mono {
font-family: "d2-3084549463-font-mono"; font-family: "d2-2819207500-font-mono";
} }
@font-face { @font-face {
font-family: d2-3084549463-font-mono; font-family: d2-2819207500-font-mono;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
} }
.d2-3084549463 .text-mono-italic { .d2-2819207500 .text-mono-italic {
font-family: "d2-3084549463-font-mono-italic"; font-family: "d2-2819207500-font-mono-italic";
} }
@font-face { @font-face {
font-family: d2-3084549463-font-mono-italic; font-family: d2-2819207500-font-mono-italic;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -25,78 +25,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-3084549463 .fill-N1{fill:#0A0F25;} .d2-2819207500 .fill-N1{fill:#0A0F25;}
.d2-3084549463 .fill-N2{fill:#676C7E;} .d2-2819207500 .fill-N2{fill:#676C7E;}
.d2-3084549463 .fill-N3{fill:#9499AB;} .d2-2819207500 .fill-N3{fill:#9499AB;}
.d2-3084549463 .fill-N4{fill:#CFD2DD;} .d2-2819207500 .fill-N4{fill:#CFD2DD;}
.d2-3084549463 .fill-N5{fill:#DEE1EB;} .d2-2819207500 .fill-N5{fill:#DEE1EB;}
.d2-3084549463 .fill-N6{fill:#EEF1F8;} .d2-2819207500 .fill-N6{fill:#EEF1F8;}
.d2-3084549463 .fill-N7{fill:#FFFFFF;} .d2-2819207500 .fill-N7{fill:#FFFFFF;}
.d2-3084549463 .fill-B1{fill:#0D32B2;} .d2-2819207500 .fill-B1{fill:#0D32B2;}
.d2-3084549463 .fill-B2{fill:#0D32B2;} .d2-2819207500 .fill-B2{fill:#0D32B2;}
.d2-3084549463 .fill-B3{fill:#E3E9FD;} .d2-2819207500 .fill-B3{fill:#E3E9FD;}
.d2-3084549463 .fill-B4{fill:#E3E9FD;} .d2-2819207500 .fill-B4{fill:#E3E9FD;}
.d2-3084549463 .fill-B5{fill:#EDF0FD;} .d2-2819207500 .fill-B5{fill:#EDF0FD;}
.d2-3084549463 .fill-B6{fill:#F7F8FE;} .d2-2819207500 .fill-B6{fill:#F7F8FE;}
.d2-3084549463 .fill-AA2{fill:#4A6FF3;} .d2-2819207500 .fill-AA2{fill:#4A6FF3;}
.d2-3084549463 .fill-AA4{fill:#EDF0FD;} .d2-2819207500 .fill-AA4{fill:#EDF0FD;}
.d2-3084549463 .fill-AA5{fill:#F7F8FE;} .d2-2819207500 .fill-AA5{fill:#F7F8FE;}
.d2-3084549463 .fill-AB4{fill:#EDF0FD;} .d2-2819207500 .fill-AB4{fill:#EDF0FD;}
.d2-3084549463 .fill-AB5{fill:#F7F8FE;} .d2-2819207500 .fill-AB5{fill:#F7F8FE;}
.d2-3084549463 .stroke-N1{stroke:#0A0F25;} .d2-2819207500 .stroke-N1{stroke:#0A0F25;}
.d2-3084549463 .stroke-N2{stroke:#676C7E;} .d2-2819207500 .stroke-N2{stroke:#676C7E;}
.d2-3084549463 .stroke-N3{stroke:#9499AB;} .d2-2819207500 .stroke-N3{stroke:#9499AB;}
.d2-3084549463 .stroke-N4{stroke:#CFD2DD;} .d2-2819207500 .stroke-N4{stroke:#CFD2DD;}
.d2-3084549463 .stroke-N5{stroke:#DEE1EB;} .d2-2819207500 .stroke-N5{stroke:#DEE1EB;}
.d2-3084549463 .stroke-N6{stroke:#EEF1F8;} .d2-2819207500 .stroke-N6{stroke:#EEF1F8;}
.d2-3084549463 .stroke-N7{stroke:#FFFFFF;} .d2-2819207500 .stroke-N7{stroke:#FFFFFF;}
.d2-3084549463 .stroke-B1{stroke:#0D32B2;} .d2-2819207500 .stroke-B1{stroke:#0D32B2;}
.d2-3084549463 .stroke-B2{stroke:#0D32B2;} .d2-2819207500 .stroke-B2{stroke:#0D32B2;}
.d2-3084549463 .stroke-B3{stroke:#E3E9FD;} .d2-2819207500 .stroke-B3{stroke:#E3E9FD;}
.d2-3084549463 .stroke-B4{stroke:#E3E9FD;} .d2-2819207500 .stroke-B4{stroke:#E3E9FD;}
.d2-3084549463 .stroke-B5{stroke:#EDF0FD;} .d2-2819207500 .stroke-B5{stroke:#EDF0FD;}
.d2-3084549463 .stroke-B6{stroke:#F7F8FE;} .d2-2819207500 .stroke-B6{stroke:#F7F8FE;}
.d2-3084549463 .stroke-AA2{stroke:#4A6FF3;} .d2-2819207500 .stroke-AA2{stroke:#4A6FF3;}
.d2-3084549463 .stroke-AA4{stroke:#EDF0FD;} .d2-2819207500 .stroke-AA4{stroke:#EDF0FD;}
.d2-3084549463 .stroke-AA5{stroke:#F7F8FE;} .d2-2819207500 .stroke-AA5{stroke:#F7F8FE;}
.d2-3084549463 .stroke-AB4{stroke:#EDF0FD;} .d2-2819207500 .stroke-AB4{stroke:#EDF0FD;}
.d2-3084549463 .stroke-AB5{stroke:#F7F8FE;} .d2-2819207500 .stroke-AB5{stroke:#F7F8FE;}
.d2-3084549463 .background-color-N1{background-color:#0A0F25;} .d2-2819207500 .background-color-N1{background-color:#0A0F25;}
.d2-3084549463 .background-color-N2{background-color:#676C7E;} .d2-2819207500 .background-color-N2{background-color:#676C7E;}
.d2-3084549463 .background-color-N3{background-color:#9499AB;} .d2-2819207500 .background-color-N3{background-color:#9499AB;}
.d2-3084549463 .background-color-N4{background-color:#CFD2DD;} .d2-2819207500 .background-color-N4{background-color:#CFD2DD;}
.d2-3084549463 .background-color-N5{background-color:#DEE1EB;} .d2-2819207500 .background-color-N5{background-color:#DEE1EB;}
.d2-3084549463 .background-color-N6{background-color:#EEF1F8;} .d2-2819207500 .background-color-N6{background-color:#EEF1F8;}
.d2-3084549463 .background-color-N7{background-color:#FFFFFF;} .d2-2819207500 .background-color-N7{background-color:#FFFFFF;}
.d2-3084549463 .background-color-B1{background-color:#0D32B2;} .d2-2819207500 .background-color-B1{background-color:#0D32B2;}
.d2-3084549463 .background-color-B2{background-color:#0D32B2;} .d2-2819207500 .background-color-B2{background-color:#0D32B2;}
.d2-3084549463 .background-color-B3{background-color:#E3E9FD;} .d2-2819207500 .background-color-B3{background-color:#E3E9FD;}
.d2-3084549463 .background-color-B4{background-color:#E3E9FD;} .d2-2819207500 .background-color-B4{background-color:#E3E9FD;}
.d2-3084549463 .background-color-B5{background-color:#EDF0FD;} .d2-2819207500 .background-color-B5{background-color:#EDF0FD;}
.d2-3084549463 .background-color-B6{background-color:#F7F8FE;} .d2-2819207500 .background-color-B6{background-color:#F7F8FE;}
.d2-3084549463 .background-color-AA2{background-color:#4A6FF3;} .d2-2819207500 .background-color-AA2{background-color:#4A6FF3;}
.d2-3084549463 .background-color-AA4{background-color:#EDF0FD;} .d2-2819207500 .background-color-AA4{background-color:#EDF0FD;}
.d2-3084549463 .background-color-AA5{background-color:#F7F8FE;} .d2-2819207500 .background-color-AA5{background-color:#F7F8FE;}
.d2-3084549463 .background-color-AB4{background-color:#EDF0FD;} .d2-2819207500 .background-color-AB4{background-color:#EDF0FD;}
.d2-3084549463 .background-color-AB5{background-color:#F7F8FE;} .d2-2819207500 .background-color-AB5{background-color:#F7F8FE;}
.d2-3084549463 .color-N1{color:#0A0F25;} .d2-2819207500 .color-N1{color:#0A0F25;}
.d2-3084549463 .color-N2{color:#676C7E;} .d2-2819207500 .color-N2{color:#676C7E;}
.d2-3084549463 .color-N3{color:#9499AB;} .d2-2819207500 .color-N3{color:#9499AB;}
.d2-3084549463 .color-N4{color:#CFD2DD;} .d2-2819207500 .color-N4{color:#CFD2DD;}
.d2-3084549463 .color-N5{color:#DEE1EB;} .d2-2819207500 .color-N5{color:#DEE1EB;}
.d2-3084549463 .color-N6{color:#EEF1F8;} .d2-2819207500 .color-N6{color:#EEF1F8;}
.d2-3084549463 .color-N7{color:#FFFFFF;} .d2-2819207500 .color-N7{color:#FFFFFF;}
.d2-3084549463 .color-B1{color:#0D32B2;} .d2-2819207500 .color-B1{color:#0D32B2;}
.d2-3084549463 .color-B2{color:#0D32B2;} .d2-2819207500 .color-B2{color:#0D32B2;}
.d2-3084549463 .color-B3{color:#E3E9FD;} .d2-2819207500 .color-B3{color:#E3E9FD;}
.d2-3084549463 .color-B4{color:#E3E9FD;} .d2-2819207500 .color-B4{color:#E3E9FD;}
.d2-3084549463 .color-B5{color:#EDF0FD;} .d2-2819207500 .color-B5{color:#EDF0FD;}
.d2-3084549463 .color-B6{color:#F7F8FE;} .d2-2819207500 .color-B6{color:#F7F8FE;}
.d2-3084549463 .color-AA2{color:#4A6FF3;} .d2-2819207500 .color-AA2{color:#4A6FF3;}
.d2-3084549463 .color-AA4{color:#EDF0FD;} .d2-2819207500 .color-AA4{color:#EDF0FD;}
.d2-3084549463 .color-AA5{color:#F7F8FE;} .d2-2819207500 .color-AA5{color:#F7F8FE;}
.d2-3084549463 .color-AB4{color:#EDF0FD;} .d2-2819207500 .color-AB4{color:#EDF0FD;}
.d2-3084549463 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css"><![CDATA[ .d2-2819207500 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css"><![CDATA[
.dots-overlay { .dots-overlay {
fill: url(#dots); fill: url(#dots);
mix-blend-mode: multiply; mix-blend-mode: multiply;
@ -129,7 +129,7 @@
<rect x="7" y="7" width="1" height="1" fill="#0A0F25"/> <rect x="7" y="7" width="1" height="1" fill="#0A0F25"/>
</g> </g>
</pattern> </pattern>
</defs><g id="NETWORK"><g class="shape" ><rect x="0.000000" y="41.000000" width="360.000000" height="412.000000" stroke="black" fill="#E7E9EE" style="stroke-width:2;" /><rect x="0.000000" y="41.000000" width="360.000000" height="412.000000" class="dots-overlay" style="stroke-width:2;" /><rect x="5.000000" y="46.000000" width="350.000000" height="402.000000" stroke="black" fill="transparent" style="stroke-width:2;" /></g><text x="180.000000" y="28.000000" class="text-mono fill-N1" style="text-anchor:middle;font-size:28px">NETWORK</text></g><g id="NETWORK.CELL TOWER"><g class="shape" ><rect x="20.000000" y="106.000000" width="320.000000" height="317.000000" stroke="black" fill="#F5F6F9" style="stroke-width:2;" /><rect x="20.000000" y="106.000000" width="320.000000" height="317.000000" class="dots-overlay" style="stroke-width:2;" /></g><text x="180.000000" y="94.000000" class="text-mono fill-N1" style="text-anchor:middle;font-size:24px">CELL TOWER</text></g><g id="NETWORK.CELL TOWER.satellites"><g class="shape" ><path d="M 125 128 H 271 C 267 128 256 146 256 161 C 256 176 267 194 271 194 H 125 C 121 194 110 176 110 161 C 110 146 121 128 125 128 Z" stroke="black" fill="white" style="stroke-width:2;" /><path d="M 115 138 H 261 C 257 138 246 156 246 171 C 246 186 257 204 261 204 H 115 C 111 204 100 186 100 171 C 100 156 111 138 115 138 Z" stroke="black" fill="white" style="stroke-width:2;" /></g><text x="180.500000" y="176.500000" class="text-mono fill-N1" style="text-anchor:middle;font-size:16px">SATELLITES</text></g><g id="NETWORK.CELL TOWER.transmitter"><g class="shape" ><rect x="105.000000" y="325.000000" width="151.000000" height="66.000000" stroke="black" fill="white" style="stroke-width:2;" /></g><text x="180.500000" y="363.500000" class="text-mono fill-N1" style="text-anchor:middle;font-size:16px">TRANSMITTER</text></g><g id="NETWORK.CELL TOWER.(satellites -&gt; transmitter)[0]"><marker id="mk-27687146" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" fill="black" class="connection" stroke-width="2" /> </marker><path d="M 150.723421 206.539593 C 112.200000 253.000000 112.250000 277.200000 149.714288 322.906432" stroke="black" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-27687146)" mask="url(#d2-3084549463)" /><text x="112.000000" y="271.000000" class="text-mono-italic fill-N2" style="text-anchor:middle;font-size:16px">SEND</text></g><g id="NETWORK.CELL TOWER.(satellites -&gt; transmitter)[1]"><path d="M 180.008333 206.999983 C 180.200000 253.000000 180.250000 277.200000 180.250000 322.000000" stroke="black" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-27687146)" mask="url(#d2-3084549463)" /><text x="180.000000" y="271.000000" class="text-mono-italic fill-N2" style="text-anchor:middle;font-size:16px">SEND</text></g><g id="NETWORK.CELL TOWER.(satellites -&gt; transmitter)[2]"><path d="M 209.284135 206.533296 C 248.200000 253.000000 248.250000 277.200000 210.785712 322.906432" stroke="black" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-27687146)" mask="url(#d2-3084549463)" /><text x="248.000000" y="271.000000" class="text-mono-italic fill-N2" style="text-anchor:middle;font-size:16px">SEND</text></g><mask id="d2-3084549463" maskUnits="userSpaceOnUse" x="-1" y="0" width="362" height="454"> </defs><g id="NETWORK"><g class="shape" ><rect x="0.000000" y="41.000000" width="360.000000" height="412.000000" stroke="black" fill="#E7E9EE" style="stroke-width:2;" /><rect x="0.000000" y="41.000000" width="360.000000" height="412.000000" class="dots-overlay" style="stroke-width:2;" /><rect x="5.000000" y="46.000000" width="350.000000" height="402.000000" stroke="black" fill="transparent" style="stroke-width:2;" /></g><text x="180.000000" y="28.000000" class="text-mono fill-N1" style="text-anchor:middle;font-size:28px">NETWORK</text></g><g id="NETWORK.CELL TOWER"><g class="shape" ><rect x="20.000000" y="106.000000" width="320.000000" height="317.000000" stroke="black" fill="#F5F6F9" style="stroke-width:2;" /><rect x="20.000000" y="106.000000" width="320.000000" height="317.000000" class="dots-overlay" style="stroke-width:2;" /></g><text x="180.000000" y="94.000000" class="text-mono fill-N1" style="text-anchor:middle;font-size:24px">CELL TOWER</text></g><g id="NETWORK.CELL TOWER.satellites"><g class="shape" ><path d="M 125 128 H 271 C 267 128 256 146 256 161 C 256 176 267 194 271 194 H 125 C 121 194 110 176 110 161 C 110 146 121 128 125 128 Z" stroke="black" fill="white" style="stroke-width:2;" /><path d="M 115 138 H 261 C 257 138 246 156 246 171 C 246 186 257 204 261 204 H 115 C 111 204 100 186 100 171 C 100 156 111 138 115 138 Z" stroke="black" fill="white" style="stroke-width:2;" /></g><text x="180.500000" y="176.500000" class="text-mono fill-N1" style="text-anchor:middle;font-size:16px">SATELLITES</text></g><g id="NETWORK.CELL TOWER.transmitter"><g class="shape" ><rect x="105.000000" y="325.000000" width="151.000000" height="66.000000" stroke="black" fill="white" style="stroke-width:2;" /></g><text x="180.500000" y="363.500000" class="text-mono fill-N1" style="text-anchor:middle;font-size:16px">TRANSMITTER</text></g><g id="NETWORK.CELL TOWER.(satellites -&gt; transmitter)[0]"><marker id="mk-27687146" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" fill="black" class="connection" stroke-width="2" /> </marker><path d="M 150.723421 206.539593 C 112.200000 253.000000 112.250000 277.200000 149.714288 322.906432" stroke="black" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-27687146)" mask="url(#d2-2819207500)" /><text x="112.000000" y="271.000000" class="text-mono-italic fill-N2" style="text-anchor:middle;font-size:16px">SEND</text></g><g id="NETWORK.CELL TOWER.(satellites -&gt; transmitter)[1]"><path d="M 180.008333 206.999983 C 180.200000 253.000000 180.250000 277.200000 180.250000 322.000000" stroke="black" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-27687146)" mask="url(#d2-2819207500)" /><text x="180.000000" y="271.000000" class="text-mono-italic fill-N2" style="text-anchor:middle;font-size:16px">SEND</text></g><g id="NETWORK.CELL TOWER.(satellites -&gt; transmitter)[2]"><path d="M 209.284135 206.533296 C 248.200000 253.000000 248.250000 277.200000 210.785712 322.906432" stroke="black" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-27687146)" mask="url(#d2-2819207500)" /><text x="248.000000" y="271.000000" class="text-mono-italic fill-N2" style="text-anchor:middle;font-size:16px">SEND</text></g><mask id="d2-2819207500" maskUnits="userSpaceOnUse" x="-1" y="0" width="362" height="454">
<rect x="-1" y="0" width="362" height="454" fill="white"></rect> <rect x="-1" y="0" width="362" height="454" fill="white"></rect>
<rect x="93.000000" y="255.000000" width="38" height="21" fill="black"></rect> <rect x="93.000000" y="255.000000" width="38" height="21" fill="black"></rect>
<rect x="161.000000" y="255.000000" width="38" height="21" fill="black"></rect> <rect x="161.000000" y="255.000000" width="38" height="21" fill="black"></rect>

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

View file

@ -214,10 +214,8 @@
"id": "(x -> y)[0]", "id": "(x -> y)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "y", "dst": "y",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -263,10 +261,8 @@
"id": "(y -> z)[0]", "id": "(y -> z)[0]",
"src": "y", "src": "y",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "z", "dst": "z",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -312,10 +308,8 @@
"id": "(x -> abcd)[0]", "id": "(x -> abcd)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "abcd", "dst": "abcd",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -361,10 +355,8 @@
"id": "(x -> g)[0]", "id": "(x -> g)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "g", "dst": "g",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -410,10 +402,8 @@
"id": "(x -> z)[0]", "id": "(x -> z)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "z", "dst": "z",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 400"><svg id="d2-svg" class="d2-70108891" width="350" height="400" viewBox="-1 -1 350 400"><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" fill="honeydew" stroke-width="0" /><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" class="dots-overlay" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 400"><svg id="d2-svg" class="d2-2074103270" width="350" height="400" viewBox="-1 -1 350 400"><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" fill="honeydew" stroke-width="0" /><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" class="dots-overlay" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-70108891 .text-bold { .d2-2074103270 .text-bold {
font-family: "d2-70108891-font-bold"; font-family: "d2-2074103270-font-bold";
} }
@font-face { @font-face {
font-family: d2-70108891-font-bold; font-family: d2-2074103270-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-70108891 .fill-N1{fill:#0A0F25;} .d2-2074103270 .fill-N1{fill:#0A0F25;}
.d2-70108891 .fill-N2{fill:#676C7E;} .d2-2074103270 .fill-N2{fill:#676C7E;}
.d2-70108891 .fill-N3{fill:#9499AB;} .d2-2074103270 .fill-N3{fill:#9499AB;}
.d2-70108891 .fill-N4{fill:#CFD2DD;} .d2-2074103270 .fill-N4{fill:#CFD2DD;}
.d2-70108891 .fill-N5{fill:#DEE1EB;} .d2-2074103270 .fill-N5{fill:#DEE1EB;}
.d2-70108891 .fill-N6{fill:#EEF1F8;} .d2-2074103270 .fill-N6{fill:#EEF1F8;}
.d2-70108891 .fill-N7{fill:#FFFFFF;} .d2-2074103270 .fill-N7{fill:#FFFFFF;}
.d2-70108891 .fill-B1{fill:#0D32B2;} .d2-2074103270 .fill-B1{fill:#0D32B2;}
.d2-70108891 .fill-B2{fill:#0D32B2;} .d2-2074103270 .fill-B2{fill:#0D32B2;}
.d2-70108891 .fill-B3{fill:#E3E9FD;} .d2-2074103270 .fill-B3{fill:#E3E9FD;}
.d2-70108891 .fill-B4{fill:#E3E9FD;} .d2-2074103270 .fill-B4{fill:#E3E9FD;}
.d2-70108891 .fill-B5{fill:#EDF0FD;} .d2-2074103270 .fill-B5{fill:#EDF0FD;}
.d2-70108891 .fill-B6{fill:#F7F8FE;} .d2-2074103270 .fill-B6{fill:#F7F8FE;}
.d2-70108891 .fill-AA2{fill:#4A6FF3;} .d2-2074103270 .fill-AA2{fill:#4A6FF3;}
.d2-70108891 .fill-AA4{fill:#EDF0FD;} .d2-2074103270 .fill-AA4{fill:#EDF0FD;}
.d2-70108891 .fill-AA5{fill:#F7F8FE;} .d2-2074103270 .fill-AA5{fill:#F7F8FE;}
.d2-70108891 .fill-AB4{fill:#EDF0FD;} .d2-2074103270 .fill-AB4{fill:#EDF0FD;}
.d2-70108891 .fill-AB5{fill:#F7F8FE;} .d2-2074103270 .fill-AB5{fill:#F7F8FE;}
.d2-70108891 .stroke-N1{stroke:#0A0F25;} .d2-2074103270 .stroke-N1{stroke:#0A0F25;}
.d2-70108891 .stroke-N2{stroke:#676C7E;} .d2-2074103270 .stroke-N2{stroke:#676C7E;}
.d2-70108891 .stroke-N3{stroke:#9499AB;} .d2-2074103270 .stroke-N3{stroke:#9499AB;}
.d2-70108891 .stroke-N4{stroke:#CFD2DD;} .d2-2074103270 .stroke-N4{stroke:#CFD2DD;}
.d2-70108891 .stroke-N5{stroke:#DEE1EB;} .d2-2074103270 .stroke-N5{stroke:#DEE1EB;}
.d2-70108891 .stroke-N6{stroke:#EEF1F8;} .d2-2074103270 .stroke-N6{stroke:#EEF1F8;}
.d2-70108891 .stroke-N7{stroke:#FFFFFF;} .d2-2074103270 .stroke-N7{stroke:#FFFFFF;}
.d2-70108891 .stroke-B1{stroke:#0D32B2;} .d2-2074103270 .stroke-B1{stroke:#0D32B2;}
.d2-70108891 .stroke-B2{stroke:#0D32B2;} .d2-2074103270 .stroke-B2{stroke:#0D32B2;}
.d2-70108891 .stroke-B3{stroke:#E3E9FD;} .d2-2074103270 .stroke-B3{stroke:#E3E9FD;}
.d2-70108891 .stroke-B4{stroke:#E3E9FD;} .d2-2074103270 .stroke-B4{stroke:#E3E9FD;}
.d2-70108891 .stroke-B5{stroke:#EDF0FD;} .d2-2074103270 .stroke-B5{stroke:#EDF0FD;}
.d2-70108891 .stroke-B6{stroke:#F7F8FE;} .d2-2074103270 .stroke-B6{stroke:#F7F8FE;}
.d2-70108891 .stroke-AA2{stroke:#4A6FF3;} .d2-2074103270 .stroke-AA2{stroke:#4A6FF3;}
.d2-70108891 .stroke-AA4{stroke:#EDF0FD;} .d2-2074103270 .stroke-AA4{stroke:#EDF0FD;}
.d2-70108891 .stroke-AA5{stroke:#F7F8FE;} .d2-2074103270 .stroke-AA5{stroke:#F7F8FE;}
.d2-70108891 .stroke-AB4{stroke:#EDF0FD;} .d2-2074103270 .stroke-AB4{stroke:#EDF0FD;}
.d2-70108891 .stroke-AB5{stroke:#F7F8FE;} .d2-2074103270 .stroke-AB5{stroke:#F7F8FE;}
.d2-70108891 .background-color-N1{background-color:#0A0F25;} .d2-2074103270 .background-color-N1{background-color:#0A0F25;}
.d2-70108891 .background-color-N2{background-color:#676C7E;} .d2-2074103270 .background-color-N2{background-color:#676C7E;}
.d2-70108891 .background-color-N3{background-color:#9499AB;} .d2-2074103270 .background-color-N3{background-color:#9499AB;}
.d2-70108891 .background-color-N4{background-color:#CFD2DD;} .d2-2074103270 .background-color-N4{background-color:#CFD2DD;}
.d2-70108891 .background-color-N5{background-color:#DEE1EB;} .d2-2074103270 .background-color-N5{background-color:#DEE1EB;}
.d2-70108891 .background-color-N6{background-color:#EEF1F8;} .d2-2074103270 .background-color-N6{background-color:#EEF1F8;}
.d2-70108891 .background-color-N7{background-color:#FFFFFF;} .d2-2074103270 .background-color-N7{background-color:#FFFFFF;}
.d2-70108891 .background-color-B1{background-color:#0D32B2;} .d2-2074103270 .background-color-B1{background-color:#0D32B2;}
.d2-70108891 .background-color-B2{background-color:#0D32B2;} .d2-2074103270 .background-color-B2{background-color:#0D32B2;}
.d2-70108891 .background-color-B3{background-color:#E3E9FD;} .d2-2074103270 .background-color-B3{background-color:#E3E9FD;}
.d2-70108891 .background-color-B4{background-color:#E3E9FD;} .d2-2074103270 .background-color-B4{background-color:#E3E9FD;}
.d2-70108891 .background-color-B5{background-color:#EDF0FD;} .d2-2074103270 .background-color-B5{background-color:#EDF0FD;}
.d2-70108891 .background-color-B6{background-color:#F7F8FE;} .d2-2074103270 .background-color-B6{background-color:#F7F8FE;}
.d2-70108891 .background-color-AA2{background-color:#4A6FF3;} .d2-2074103270 .background-color-AA2{background-color:#4A6FF3;}
.d2-70108891 .background-color-AA4{background-color:#EDF0FD;} .d2-2074103270 .background-color-AA4{background-color:#EDF0FD;}
.d2-70108891 .background-color-AA5{background-color:#F7F8FE;} .d2-2074103270 .background-color-AA5{background-color:#F7F8FE;}
.d2-70108891 .background-color-AB4{background-color:#EDF0FD;} .d2-2074103270 .background-color-AB4{background-color:#EDF0FD;}
.d2-70108891 .background-color-AB5{background-color:#F7F8FE;} .d2-2074103270 .background-color-AB5{background-color:#F7F8FE;}
.d2-70108891 .color-N1{color:#0A0F25;} .d2-2074103270 .color-N1{color:#0A0F25;}
.d2-70108891 .color-N2{color:#676C7E;} .d2-2074103270 .color-N2{color:#676C7E;}
.d2-70108891 .color-N3{color:#9499AB;} .d2-2074103270 .color-N3{color:#9499AB;}
.d2-70108891 .color-N4{color:#CFD2DD;} .d2-2074103270 .color-N4{color:#CFD2DD;}
.d2-70108891 .color-N5{color:#DEE1EB;} .d2-2074103270 .color-N5{color:#DEE1EB;}
.d2-70108891 .color-N6{color:#EEF1F8;} .d2-2074103270 .color-N6{color:#EEF1F8;}
.d2-70108891 .color-N7{color:#FFFFFF;} .d2-2074103270 .color-N7{color:#FFFFFF;}
.d2-70108891 .color-B1{color:#0D32B2;} .d2-2074103270 .color-B1{color:#0D32B2;}
.d2-70108891 .color-B2{color:#0D32B2;} .d2-2074103270 .color-B2{color:#0D32B2;}
.d2-70108891 .color-B3{color:#E3E9FD;} .d2-2074103270 .color-B3{color:#E3E9FD;}
.d2-70108891 .color-B4{color:#E3E9FD;} .d2-2074103270 .color-B4{color:#E3E9FD;}
.d2-70108891 .color-B5{color:#EDF0FD;} .d2-2074103270 .color-B5{color:#EDF0FD;}
.d2-70108891 .color-B6{color:#F7F8FE;} .d2-2074103270 .color-B6{color:#F7F8FE;}
.d2-70108891 .color-AA2{color:#4A6FF3;} .d2-2074103270 .color-AA2{color:#4A6FF3;}
.d2-70108891 .color-AA4{color:#EDF0FD;} .d2-2074103270 .color-AA4{color:#EDF0FD;}
.d2-70108891 .color-AA5{color:#F7F8FE;} .d2-2074103270 .color-AA5{color:#F7F8FE;}
.d2-70108891 .color-AB4{color:#EDF0FD;} .d2-2074103270 .color-AB4{color:#EDF0FD;}
.d2-70108891 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css"><![CDATA[ .d2-2074103270 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css"><![CDATA[
.dots-overlay { .dots-overlay {
fill: url(#dots); fill: url(#dots);
mix-blend-mode: multiply; mix-blend-mode: multiply;
@ -122,7 +122,7 @@
<rect x="7" y="7" width="1" height="1" fill="#0A0F25"/> <rect x="7" y="7" width="1" height="1" fill="#0A0F25"/>
</g> </g>
</pattern> </pattern>
</defs><g id="x"><g class="shape" ><rect x="191.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="217.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="162.000000" y="332.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="188.000000" y="370.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="abcd"><g class="shape" ><rect x="114.000000" y="166.000000" width="80.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="154.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">abcd</text></g><g id="g"><g class="shape" ><rect x="254.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="281.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">g</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 189.166472 45.344792 C 59.800000 101.709186 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><g id="(y -&gt; z)[0]"><path d="M 27.000000 234.000000 C 27.000000 272.000000 53.900000 295.910903 157.946974 349.717127" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><g id="(x -&gt; abcd)[0]"><path d="M 191.037757 67.588444 C 161.650602 106.000000 154.000000 126.000000 154.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><g id="(x -&gt; g)[0]"><path d="M 243.962243 67.588444 C 273.349398 106.000000 281.000000 126.000000 281.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><g id="(x -&gt; z)[0]"><path d="M 245.687589 50.927739 C 327.200000 102.770881 348.000000 132.600000 348.000000 157.500000 C 348.000000 182.400000 321.200000 295.800000 217.556226 349.168809" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><mask id="d2-70108891" maskUnits="userSpaceOnUse" x="-1" y="-1" width="350" height="400"> </defs><g id="x"><g class="shape" ><rect x="191.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="217.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="162.000000" y="332.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="188.000000" y="370.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="abcd"><g class="shape" ><rect x="114.000000" y="166.000000" width="80.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="154.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">abcd</text></g><g id="g"><g class="shape" ><rect x="254.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="281.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">g</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 189.166472 45.344792 C 59.800000 101.709186 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><g id="(y -&gt; z)[0]"><path d="M 27.000000 234.000000 C 27.000000 272.000000 53.900000 295.910903 157.946974 349.717127" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><g id="(x -&gt; abcd)[0]"><path d="M 191.037757 67.588444 C 161.650602 106.000000 154.000000 126.000000 154.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><g id="(x -&gt; g)[0]"><path d="M 243.962243 67.588444 C 273.349398 106.000000 281.000000 126.000000 281.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><g id="(x -&gt; z)[0]"><path d="M 245.687589 50.927739 C 327.200000 102.770881 348.000000 132.600000 348.000000 157.500000 C 348.000000 182.400000 321.200000 295.800000 217.556226 349.168809" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><mask id="d2-2074103270" maskUnits="userSpaceOnUse" x="-1" y="-1" width="350" height="400">
<rect x="-1" y="-1" width="350" height="400" fill="white"></rect> <rect x="-1" y="-1" width="350" height="400" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -214,10 +214,8 @@
"id": "(x -> y)[0]", "id": "(x -> y)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "y", "dst": "y",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -263,10 +261,8 @@
"id": "(y -> z)[0]", "id": "(y -> z)[0]",
"src": "y", "src": "y",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "z", "dst": "z",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -312,10 +308,8 @@
"id": "(x -> abcd)[0]", "id": "(x -> abcd)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "abcd", "dst": "abcd",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -361,10 +355,8 @@
"id": "(x -> g)[0]", "id": "(x -> g)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "g", "dst": "g",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -410,10 +402,8 @@
"id": "(x -> z)[0]", "id": "(x -> z)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "z", "dst": "z",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 400"><svg id="d2-svg" class="d2-70108891" width="350" height="400" viewBox="-1 -1 350 400"><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" class="dots-overlay" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 400"><svg id="d2-svg" class="d2-2074103270" width="350" height="400" viewBox="-1 -1 350 400"><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" class="dots-overlay" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-70108891 .text-bold { .d2-2074103270 .text-bold {
font-family: "d2-70108891-font-bold"; font-family: "d2-2074103270-font-bold";
} }
@font-face { @font-face {
font-family: d2-70108891-font-bold; font-family: d2-2074103270-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-70108891 .fill-N1{fill:#0A0F25;} .d2-2074103270 .fill-N1{fill:#0A0F25;}
.d2-70108891 .fill-N2{fill:#676C7E;} .d2-2074103270 .fill-N2{fill:#676C7E;}
.d2-70108891 .fill-N3{fill:#9499AB;} .d2-2074103270 .fill-N3{fill:#9499AB;}
.d2-70108891 .fill-N4{fill:#CFD2DD;} .d2-2074103270 .fill-N4{fill:#CFD2DD;}
.d2-70108891 .fill-N5{fill:#DEE1EB;} .d2-2074103270 .fill-N5{fill:#DEE1EB;}
.d2-70108891 .fill-N6{fill:#EEF1F8;} .d2-2074103270 .fill-N6{fill:#EEF1F8;}
.d2-70108891 .fill-N7{fill:#FFFFFF;} .d2-2074103270 .fill-N7{fill:#FFFFFF;}
.d2-70108891 .fill-B1{fill:#0D32B2;} .d2-2074103270 .fill-B1{fill:#0D32B2;}
.d2-70108891 .fill-B2{fill:#0D32B2;} .d2-2074103270 .fill-B2{fill:#0D32B2;}
.d2-70108891 .fill-B3{fill:#E3E9FD;} .d2-2074103270 .fill-B3{fill:#E3E9FD;}
.d2-70108891 .fill-B4{fill:#E3E9FD;} .d2-2074103270 .fill-B4{fill:#E3E9FD;}
.d2-70108891 .fill-B5{fill:#EDF0FD;} .d2-2074103270 .fill-B5{fill:#EDF0FD;}
.d2-70108891 .fill-B6{fill:#F7F8FE;} .d2-2074103270 .fill-B6{fill:#F7F8FE;}
.d2-70108891 .fill-AA2{fill:#4A6FF3;} .d2-2074103270 .fill-AA2{fill:#4A6FF3;}
.d2-70108891 .fill-AA4{fill:#EDF0FD;} .d2-2074103270 .fill-AA4{fill:#EDF0FD;}
.d2-70108891 .fill-AA5{fill:#F7F8FE;} .d2-2074103270 .fill-AA5{fill:#F7F8FE;}
.d2-70108891 .fill-AB4{fill:#EDF0FD;} .d2-2074103270 .fill-AB4{fill:#EDF0FD;}
.d2-70108891 .fill-AB5{fill:#F7F8FE;} .d2-2074103270 .fill-AB5{fill:#F7F8FE;}
.d2-70108891 .stroke-N1{stroke:#0A0F25;} .d2-2074103270 .stroke-N1{stroke:#0A0F25;}
.d2-70108891 .stroke-N2{stroke:#676C7E;} .d2-2074103270 .stroke-N2{stroke:#676C7E;}
.d2-70108891 .stroke-N3{stroke:#9499AB;} .d2-2074103270 .stroke-N3{stroke:#9499AB;}
.d2-70108891 .stroke-N4{stroke:#CFD2DD;} .d2-2074103270 .stroke-N4{stroke:#CFD2DD;}
.d2-70108891 .stroke-N5{stroke:#DEE1EB;} .d2-2074103270 .stroke-N5{stroke:#DEE1EB;}
.d2-70108891 .stroke-N6{stroke:#EEF1F8;} .d2-2074103270 .stroke-N6{stroke:#EEF1F8;}
.d2-70108891 .stroke-N7{stroke:#FFFFFF;} .d2-2074103270 .stroke-N7{stroke:#FFFFFF;}
.d2-70108891 .stroke-B1{stroke:#0D32B2;} .d2-2074103270 .stroke-B1{stroke:#0D32B2;}
.d2-70108891 .stroke-B2{stroke:#0D32B2;} .d2-2074103270 .stroke-B2{stroke:#0D32B2;}
.d2-70108891 .stroke-B3{stroke:#E3E9FD;} .d2-2074103270 .stroke-B3{stroke:#E3E9FD;}
.d2-70108891 .stroke-B4{stroke:#E3E9FD;} .d2-2074103270 .stroke-B4{stroke:#E3E9FD;}
.d2-70108891 .stroke-B5{stroke:#EDF0FD;} .d2-2074103270 .stroke-B5{stroke:#EDF0FD;}
.d2-70108891 .stroke-B6{stroke:#F7F8FE;} .d2-2074103270 .stroke-B6{stroke:#F7F8FE;}
.d2-70108891 .stroke-AA2{stroke:#4A6FF3;} .d2-2074103270 .stroke-AA2{stroke:#4A6FF3;}
.d2-70108891 .stroke-AA4{stroke:#EDF0FD;} .d2-2074103270 .stroke-AA4{stroke:#EDF0FD;}
.d2-70108891 .stroke-AA5{stroke:#F7F8FE;} .d2-2074103270 .stroke-AA5{stroke:#F7F8FE;}
.d2-70108891 .stroke-AB4{stroke:#EDF0FD;} .d2-2074103270 .stroke-AB4{stroke:#EDF0FD;}
.d2-70108891 .stroke-AB5{stroke:#F7F8FE;} .d2-2074103270 .stroke-AB5{stroke:#F7F8FE;}
.d2-70108891 .background-color-N1{background-color:#0A0F25;} .d2-2074103270 .background-color-N1{background-color:#0A0F25;}
.d2-70108891 .background-color-N2{background-color:#676C7E;} .d2-2074103270 .background-color-N2{background-color:#676C7E;}
.d2-70108891 .background-color-N3{background-color:#9499AB;} .d2-2074103270 .background-color-N3{background-color:#9499AB;}
.d2-70108891 .background-color-N4{background-color:#CFD2DD;} .d2-2074103270 .background-color-N4{background-color:#CFD2DD;}
.d2-70108891 .background-color-N5{background-color:#DEE1EB;} .d2-2074103270 .background-color-N5{background-color:#DEE1EB;}
.d2-70108891 .background-color-N6{background-color:#EEF1F8;} .d2-2074103270 .background-color-N6{background-color:#EEF1F8;}
.d2-70108891 .background-color-N7{background-color:#FFFFFF;} .d2-2074103270 .background-color-N7{background-color:#FFFFFF;}
.d2-70108891 .background-color-B1{background-color:#0D32B2;} .d2-2074103270 .background-color-B1{background-color:#0D32B2;}
.d2-70108891 .background-color-B2{background-color:#0D32B2;} .d2-2074103270 .background-color-B2{background-color:#0D32B2;}
.d2-70108891 .background-color-B3{background-color:#E3E9FD;} .d2-2074103270 .background-color-B3{background-color:#E3E9FD;}
.d2-70108891 .background-color-B4{background-color:#E3E9FD;} .d2-2074103270 .background-color-B4{background-color:#E3E9FD;}
.d2-70108891 .background-color-B5{background-color:#EDF0FD;} .d2-2074103270 .background-color-B5{background-color:#EDF0FD;}
.d2-70108891 .background-color-B6{background-color:#F7F8FE;} .d2-2074103270 .background-color-B6{background-color:#F7F8FE;}
.d2-70108891 .background-color-AA2{background-color:#4A6FF3;} .d2-2074103270 .background-color-AA2{background-color:#4A6FF3;}
.d2-70108891 .background-color-AA4{background-color:#EDF0FD;} .d2-2074103270 .background-color-AA4{background-color:#EDF0FD;}
.d2-70108891 .background-color-AA5{background-color:#F7F8FE;} .d2-2074103270 .background-color-AA5{background-color:#F7F8FE;}
.d2-70108891 .background-color-AB4{background-color:#EDF0FD;} .d2-2074103270 .background-color-AB4{background-color:#EDF0FD;}
.d2-70108891 .background-color-AB5{background-color:#F7F8FE;} .d2-2074103270 .background-color-AB5{background-color:#F7F8FE;}
.d2-70108891 .color-N1{color:#0A0F25;} .d2-2074103270 .color-N1{color:#0A0F25;}
.d2-70108891 .color-N2{color:#676C7E;} .d2-2074103270 .color-N2{color:#676C7E;}
.d2-70108891 .color-N3{color:#9499AB;} .d2-2074103270 .color-N3{color:#9499AB;}
.d2-70108891 .color-N4{color:#CFD2DD;} .d2-2074103270 .color-N4{color:#CFD2DD;}
.d2-70108891 .color-N5{color:#DEE1EB;} .d2-2074103270 .color-N5{color:#DEE1EB;}
.d2-70108891 .color-N6{color:#EEF1F8;} .d2-2074103270 .color-N6{color:#EEF1F8;}
.d2-70108891 .color-N7{color:#FFFFFF;} .d2-2074103270 .color-N7{color:#FFFFFF;}
.d2-70108891 .color-B1{color:#0D32B2;} .d2-2074103270 .color-B1{color:#0D32B2;}
.d2-70108891 .color-B2{color:#0D32B2;} .d2-2074103270 .color-B2{color:#0D32B2;}
.d2-70108891 .color-B3{color:#E3E9FD;} .d2-2074103270 .color-B3{color:#E3E9FD;}
.d2-70108891 .color-B4{color:#E3E9FD;} .d2-2074103270 .color-B4{color:#E3E9FD;}
.d2-70108891 .color-B5{color:#EDF0FD;} .d2-2074103270 .color-B5{color:#EDF0FD;}
.d2-70108891 .color-B6{color:#F7F8FE;} .d2-2074103270 .color-B6{color:#F7F8FE;}
.d2-70108891 .color-AA2{color:#4A6FF3;} .d2-2074103270 .color-AA2{color:#4A6FF3;}
.d2-70108891 .color-AA4{color:#EDF0FD;} .d2-2074103270 .color-AA4{color:#EDF0FD;}
.d2-70108891 .color-AA5{color:#F7F8FE;} .d2-2074103270 .color-AA5{color:#F7F8FE;}
.d2-70108891 .color-AB4{color:#EDF0FD;} .d2-2074103270 .color-AB4{color:#EDF0FD;}
.d2-70108891 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css"><![CDATA[ .d2-2074103270 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css"><![CDATA[
.dots-overlay { .dots-overlay {
fill: url(#dots); fill: url(#dots);
mix-blend-mode: multiply; mix-blend-mode: multiply;
@ -122,7 +122,7 @@
<rect x="7" y="7" width="1" height="1" fill="#0A0F25"/> <rect x="7" y="7" width="1" height="1" fill="#0A0F25"/>
</g> </g>
</pattern> </pattern>
</defs><g id="x"><g class="shape" ><rect x="191.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="217.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="162.000000" y="332.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="188.000000" y="370.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="abcd"><g class="shape" ><rect x="114.000000" y="166.000000" width="80.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="154.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">abcd</text></g><g id="g"><g class="shape" ><rect x="254.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="281.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">g</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 189.166472 45.344792 C 59.800000 101.709186 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><g id="(y -&gt; z)[0]"><path d="M 27.000000 234.000000 C 27.000000 272.000000 53.900000 295.910903 157.946974 349.717127" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><g id="(x -&gt; abcd)[0]"><path d="M 191.037757 67.588444 C 161.650602 106.000000 154.000000 126.000000 154.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><g id="(x -&gt; g)[0]"><path d="M 243.962243 67.588444 C 273.349398 106.000000 281.000000 126.000000 281.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><g id="(x -&gt; z)[0]"><path d="M 245.687589 50.927739 C 327.200000 102.770881 348.000000 132.600000 348.000000 157.500000 C 348.000000 182.400000 321.200000 295.800000 217.556226 349.168809" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-70108891)" /></g><mask id="d2-70108891" maskUnits="userSpaceOnUse" x="-1" y="-1" width="350" height="400"> </defs><g id="x"><g class="shape" ><rect x="191.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="217.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="162.000000" y="332.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="188.000000" y="370.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="abcd"><g class="shape" ><rect x="114.000000" y="166.000000" width="80.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="154.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">abcd</text></g><g id="g"><g class="shape" ><rect x="254.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="281.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">g</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 189.166472 45.344792 C 59.800000 101.709186 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><g id="(y -&gt; z)[0]"><path d="M 27.000000 234.000000 C 27.000000 272.000000 53.900000 295.910903 157.946974 349.717127" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><g id="(x -&gt; abcd)[0]"><path d="M 191.037757 67.588444 C 161.650602 106.000000 154.000000 126.000000 154.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><g id="(x -&gt; g)[0]"><path d="M 243.962243 67.588444 C 273.349398 106.000000 281.000000 126.000000 281.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><g id="(x -&gt; z)[0]"><path d="M 245.687589 50.927739 C 327.200000 102.770881 348.000000 132.600000 348.000000 157.500000 C 348.000000 182.400000 321.200000 295.800000 217.556226 349.168809" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2074103270)" /></g><mask id="d2-2074103270" maskUnits="userSpaceOnUse" x="-1" y="-1" width="350" height="400">
<rect x="-1" y="-1" width="350" height="400" fill="white"></rect> <rect x="-1" y="-1" width="350" height="400" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -216,10 +216,8 @@
"id": "(x -> y)[0]", "id": "(x -> y)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "y", "dst": "y",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -265,10 +263,8 @@
"id": "(y -> z)[0]", "id": "(y -> z)[0]",
"src": "y", "src": "y",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "z", "dst": "z",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -314,10 +310,8 @@
"id": "(x -> abcd)[0]", "id": "(x -> abcd)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "abcd", "dst": "abcd",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -363,10 +357,8 @@
"id": "(x -> g)[0]", "id": "(x -> g)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "g", "dst": "g",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -412,10 +404,8 @@
"id": "(x -> z)[0]", "id": "(x -> z)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "z", "dst": "z",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 400"><svg id="d2-svg" class="d2-2976898491" width="350" height="400" viewBox="-1 -1 350 400"><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 400"><svg id="d2-svg" class="d2-53077446" width="350" height="400" viewBox="-1 -1 350 400"><rect x="-1.000000" y="-1.000000" width="350.000000" height="400.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-2976898491 .text-bold { .d2-53077446 .text-bold {
font-family: "d2-2976898491-font-bold"; font-family: "d2-53077446-font-bold";
} }
@font-face { @font-face {
font-family: d2-2976898491-font-bold; font-family: d2-53077446-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-2976898491 .fill-N1{fill:#0A0F25;} .d2-53077446 .fill-N1{fill:#0A0F25;}
.d2-2976898491 .fill-N2{fill:#676C7E;} .d2-53077446 .fill-N2{fill:#676C7E;}
.d2-2976898491 .fill-N3{fill:#9499AB;} .d2-53077446 .fill-N3{fill:#9499AB;}
.d2-2976898491 .fill-N4{fill:#CFD2DD;} .d2-53077446 .fill-N4{fill:#CFD2DD;}
.d2-2976898491 .fill-N5{fill:#DEE1EB;} .d2-53077446 .fill-N5{fill:#DEE1EB;}
.d2-2976898491 .fill-N6{fill:#EEF1F8;} .d2-53077446 .fill-N6{fill:#EEF1F8;}
.d2-2976898491 .fill-N7{fill:#FFFFFF;} .d2-53077446 .fill-N7{fill:#FFFFFF;}
.d2-2976898491 .fill-B1{fill:#0D32B2;} .d2-53077446 .fill-B1{fill:#0D32B2;}
.d2-2976898491 .fill-B2{fill:#0D32B2;} .d2-53077446 .fill-B2{fill:#0D32B2;}
.d2-2976898491 .fill-B3{fill:#E3E9FD;} .d2-53077446 .fill-B3{fill:#E3E9FD;}
.d2-2976898491 .fill-B4{fill:#E3E9FD;} .d2-53077446 .fill-B4{fill:#E3E9FD;}
.d2-2976898491 .fill-B5{fill:#EDF0FD;} .d2-53077446 .fill-B5{fill:#EDF0FD;}
.d2-2976898491 .fill-B6{fill:#F7F8FE;} .d2-53077446 .fill-B6{fill:#F7F8FE;}
.d2-2976898491 .fill-AA2{fill:#4A6FF3;} .d2-53077446 .fill-AA2{fill:#4A6FF3;}
.d2-2976898491 .fill-AA4{fill:#EDF0FD;} .d2-53077446 .fill-AA4{fill:#EDF0FD;}
.d2-2976898491 .fill-AA5{fill:#F7F8FE;} .d2-53077446 .fill-AA5{fill:#F7F8FE;}
.d2-2976898491 .fill-AB4{fill:#EDF0FD;} .d2-53077446 .fill-AB4{fill:#EDF0FD;}
.d2-2976898491 .fill-AB5{fill:#F7F8FE;} .d2-53077446 .fill-AB5{fill:#F7F8FE;}
.d2-2976898491 .stroke-N1{stroke:#0A0F25;} .d2-53077446 .stroke-N1{stroke:#0A0F25;}
.d2-2976898491 .stroke-N2{stroke:#676C7E;} .d2-53077446 .stroke-N2{stroke:#676C7E;}
.d2-2976898491 .stroke-N3{stroke:#9499AB;} .d2-53077446 .stroke-N3{stroke:#9499AB;}
.d2-2976898491 .stroke-N4{stroke:#CFD2DD;} .d2-53077446 .stroke-N4{stroke:#CFD2DD;}
.d2-2976898491 .stroke-N5{stroke:#DEE1EB;} .d2-53077446 .stroke-N5{stroke:#DEE1EB;}
.d2-2976898491 .stroke-N6{stroke:#EEF1F8;} .d2-53077446 .stroke-N6{stroke:#EEF1F8;}
.d2-2976898491 .stroke-N7{stroke:#FFFFFF;} .d2-53077446 .stroke-N7{stroke:#FFFFFF;}
.d2-2976898491 .stroke-B1{stroke:#0D32B2;} .d2-53077446 .stroke-B1{stroke:#0D32B2;}
.d2-2976898491 .stroke-B2{stroke:#0D32B2;} .d2-53077446 .stroke-B2{stroke:#0D32B2;}
.d2-2976898491 .stroke-B3{stroke:#E3E9FD;} .d2-53077446 .stroke-B3{stroke:#E3E9FD;}
.d2-2976898491 .stroke-B4{stroke:#E3E9FD;} .d2-53077446 .stroke-B4{stroke:#E3E9FD;}
.d2-2976898491 .stroke-B5{stroke:#EDF0FD;} .d2-53077446 .stroke-B5{stroke:#EDF0FD;}
.d2-2976898491 .stroke-B6{stroke:#F7F8FE;} .d2-53077446 .stroke-B6{stroke:#F7F8FE;}
.d2-2976898491 .stroke-AA2{stroke:#4A6FF3;} .d2-53077446 .stroke-AA2{stroke:#4A6FF3;}
.d2-2976898491 .stroke-AA4{stroke:#EDF0FD;} .d2-53077446 .stroke-AA4{stroke:#EDF0FD;}
.d2-2976898491 .stroke-AA5{stroke:#F7F8FE;} .d2-53077446 .stroke-AA5{stroke:#F7F8FE;}
.d2-2976898491 .stroke-AB4{stroke:#EDF0FD;} .d2-53077446 .stroke-AB4{stroke:#EDF0FD;}
.d2-2976898491 .stroke-AB5{stroke:#F7F8FE;} .d2-53077446 .stroke-AB5{stroke:#F7F8FE;}
.d2-2976898491 .background-color-N1{background-color:#0A0F25;} .d2-53077446 .background-color-N1{background-color:#0A0F25;}
.d2-2976898491 .background-color-N2{background-color:#676C7E;} .d2-53077446 .background-color-N2{background-color:#676C7E;}
.d2-2976898491 .background-color-N3{background-color:#9499AB;} .d2-53077446 .background-color-N3{background-color:#9499AB;}
.d2-2976898491 .background-color-N4{background-color:#CFD2DD;} .d2-53077446 .background-color-N4{background-color:#CFD2DD;}
.d2-2976898491 .background-color-N5{background-color:#DEE1EB;} .d2-53077446 .background-color-N5{background-color:#DEE1EB;}
.d2-2976898491 .background-color-N6{background-color:#EEF1F8;} .d2-53077446 .background-color-N6{background-color:#EEF1F8;}
.d2-2976898491 .background-color-N7{background-color:#FFFFFF;} .d2-53077446 .background-color-N7{background-color:#FFFFFF;}
.d2-2976898491 .background-color-B1{background-color:#0D32B2;} .d2-53077446 .background-color-B1{background-color:#0D32B2;}
.d2-2976898491 .background-color-B2{background-color:#0D32B2;} .d2-53077446 .background-color-B2{background-color:#0D32B2;}
.d2-2976898491 .background-color-B3{background-color:#E3E9FD;} .d2-53077446 .background-color-B3{background-color:#E3E9FD;}
.d2-2976898491 .background-color-B4{background-color:#E3E9FD;} .d2-53077446 .background-color-B4{background-color:#E3E9FD;}
.d2-2976898491 .background-color-B5{background-color:#EDF0FD;} .d2-53077446 .background-color-B5{background-color:#EDF0FD;}
.d2-2976898491 .background-color-B6{background-color:#F7F8FE;} .d2-53077446 .background-color-B6{background-color:#F7F8FE;}
.d2-2976898491 .background-color-AA2{background-color:#4A6FF3;} .d2-53077446 .background-color-AA2{background-color:#4A6FF3;}
.d2-2976898491 .background-color-AA4{background-color:#EDF0FD;} .d2-53077446 .background-color-AA4{background-color:#EDF0FD;}
.d2-2976898491 .background-color-AA5{background-color:#F7F8FE;} .d2-53077446 .background-color-AA5{background-color:#F7F8FE;}
.d2-2976898491 .background-color-AB4{background-color:#EDF0FD;} .d2-53077446 .background-color-AB4{background-color:#EDF0FD;}
.d2-2976898491 .background-color-AB5{background-color:#F7F8FE;} .d2-53077446 .background-color-AB5{background-color:#F7F8FE;}
.d2-2976898491 .color-N1{color:#0A0F25;} .d2-53077446 .color-N1{color:#0A0F25;}
.d2-2976898491 .color-N2{color:#676C7E;} .d2-53077446 .color-N2{color:#676C7E;}
.d2-2976898491 .color-N3{color:#9499AB;} .d2-53077446 .color-N3{color:#9499AB;}
.d2-2976898491 .color-N4{color:#CFD2DD;} .d2-53077446 .color-N4{color:#CFD2DD;}
.d2-2976898491 .color-N5{color:#DEE1EB;} .d2-53077446 .color-N5{color:#DEE1EB;}
.d2-2976898491 .color-N6{color:#EEF1F8;} .d2-53077446 .color-N6{color:#EEF1F8;}
.d2-2976898491 .color-N7{color:#FFFFFF;} .d2-53077446 .color-N7{color:#FFFFFF;}
.d2-2976898491 .color-B1{color:#0D32B2;} .d2-53077446 .color-B1{color:#0D32B2;}
.d2-2976898491 .color-B2{color:#0D32B2;} .d2-53077446 .color-B2{color:#0D32B2;}
.d2-2976898491 .color-B3{color:#E3E9FD;} .d2-53077446 .color-B3{color:#E3E9FD;}
.d2-2976898491 .color-B4{color:#E3E9FD;} .d2-53077446 .color-B4{color:#E3E9FD;}
.d2-2976898491 .color-B5{color:#EDF0FD;} .d2-53077446 .color-B5{color:#EDF0FD;}
.d2-2976898491 .color-B6{color:#F7F8FE;} .d2-53077446 .color-B6{color:#F7F8FE;}
.d2-2976898491 .color-AA2{color:#4A6FF3;} .d2-53077446 .color-AA2{color:#4A6FF3;}
.d2-2976898491 .color-AA4{color:#EDF0FD;} .d2-53077446 .color-AA4{color:#EDF0FD;}
.d2-2976898491 .color-AA5{color:#F7F8FE;} .d2-53077446 .color-AA5{color:#F7F8FE;}
.d2-2976898491 .color-AB4{color:#EDF0FD;} .d2-53077446 .color-AB4{color:#EDF0FD;}
.d2-2976898491 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css"><![CDATA[ .d2-53077446 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><style type="text/css"><![CDATA[
.dots-overlay { .dots-overlay {
fill: url(#dots); fill: url(#dots);
mix-blend-mode: multiply; mix-blend-mode: multiply;
@ -122,7 +122,7 @@
<rect x="7" y="7" width="1" height="1" fill="#0A0F25"/> <rect x="7" y="7" width="1" height="1" fill="#0A0F25"/>
</g> </g>
</pattern> </pattern>
</defs><g id="x"><g class="shape" ><rect x="191.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /><rect x="191.000000" y="0.000000" width="53.000000" height="66.000000" class="dots-overlay" style="stroke-width:2;" /></g><text x="217.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="162.000000" y="332.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="188.000000" y="370.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="abcd"><g class="shape" ><rect x="114.000000" y="166.000000" width="80.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /><rect x="114.000000" y="166.000000" width="80.000000" height="66.000000" class="dots-overlay" style="stroke-width:2;" /></g><text x="154.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">abcd</text></g><g id="g"><g class="shape" ><rect x="254.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="281.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">g</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 189.166472 45.344792 C 59.800000 101.709186 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2976898491)" /></g><g id="(y -&gt; z)[0]"><path d="M 27.000000 234.000000 C 27.000000 272.000000 53.900000 295.910903 157.946974 349.717127" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2976898491)" /></g><g id="(x -&gt; abcd)[0]"><path d="M 191.037757 67.588444 C 161.650602 106.000000 154.000000 126.000000 154.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2976898491)" /></g><g id="(x -&gt; g)[0]"><path d="M 243.962243 67.588444 C 273.349398 106.000000 281.000000 126.000000 281.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2976898491)" /></g><g id="(x -&gt; z)[0]"><path d="M 245.687589 50.927739 C 327.200000 102.770881 348.000000 132.600000 348.000000 157.500000 C 348.000000 182.400000 321.200000 295.800000 217.556226 349.168809" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2976898491)" /></g><mask id="d2-2976898491" maskUnits="userSpaceOnUse" x="-1" y="-1" width="350" height="400"> </defs><g id="x"><g class="shape" ><rect x="191.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /><rect x="191.000000" y="0.000000" width="53.000000" height="66.000000" class="dots-overlay" style="stroke-width:2;" /></g><text x="217.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="0.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="27.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="162.000000" y="332.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="188.000000" y="370.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="abcd"><g class="shape" ><rect x="114.000000" y="166.000000" width="80.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /><rect x="114.000000" y="166.000000" width="80.000000" height="66.000000" class="dots-overlay" style="stroke-width:2;" /></g><text x="154.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">abcd</text></g><g id="g"><g class="shape" ><rect x="254.000000" y="166.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="281.000000" y="204.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">g</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 189.166472 45.344792 C 59.800000 101.709186 27.000000 126.000000 27.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-53077446)" /></g><g id="(y -&gt; z)[0]"><path d="M 27.000000 234.000000 C 27.000000 272.000000 53.900000 295.910903 157.946974 349.717127" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-53077446)" /></g><g id="(x -&gt; abcd)[0]"><path d="M 191.037757 67.588444 C 161.650602 106.000000 154.000000 126.000000 154.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-53077446)" /></g><g id="(x -&gt; g)[0]"><path d="M 243.962243 67.588444 C 273.349398 106.000000 281.000000 126.000000 281.000000 162.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-53077446)" /></g><g id="(x -&gt; z)[0]"><path d="M 245.687589 50.927739 C 327.200000 102.770881 348.000000 132.600000 348.000000 157.500000 C 348.000000 182.400000 321.200000 295.800000 217.556226 349.168809" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-53077446)" /></g><mask id="d2-53077446" maskUnits="userSpaceOnUse" x="-1" y="-1" width="350" height="400">
<rect x="-1" y="-1" width="350" height="400" fill="white"></rect> <rect x="-1" y="-1" width="350" height="400" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 61 KiB

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 60 KiB

View file

@ -132,10 +132,8 @@
"id": "(x -> y)[0]", "id": "(x -> y)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "y", "dst": "y",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -181,10 +179,8 @@
"id": "(y -> z)[0]", "id": "(y -> z)[0]",
"src": "y", "src": "y",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "z", "dst": "z",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

View file

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 425 68"><svg id="d2-svg" class="d2-2734330532" width="425" height="68" viewBox="-1 -1 425 68"><rect x="-1.000000" y="-1.000000" width="425.000000" height="68.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 425 68"><svg id="d2-svg" class="d2-2795922944" width="425" height="68" viewBox="-1 -1 425 68"><rect x="-1.000000" y="-1.000000" width="425.000000" height="68.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-2734330532 .text-bold { .d2-2795922944 .text-bold {
font-family: "d2-2734330532-font-bold"; font-family: "d2-2795922944-font-bold";
} }
@font-face { @font-face {
font-family: d2-2734330532-font-bold; font-family: d2-2795922944-font-bold;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
} }
.d2-2734330532 .text-italic { .d2-2795922944 .text-italic {
font-family: "d2-2734330532-font-italic"; font-family: "d2-2795922944-font-italic";
} }
@font-face { @font-face {
font-family: d2-2734330532-font-italic; font-family: d2-2795922944-font-italic;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -25,78 +25,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-2734330532 .fill-N1{fill:#0A0F25;} .d2-2795922944 .fill-N1{fill:#0A0F25;}
.d2-2734330532 .fill-N2{fill:#676C7E;} .d2-2795922944 .fill-N2{fill:#676C7E;}
.d2-2734330532 .fill-N3{fill:#9499AB;} .d2-2795922944 .fill-N3{fill:#9499AB;}
.d2-2734330532 .fill-N4{fill:#CFD2DD;} .d2-2795922944 .fill-N4{fill:#CFD2DD;}
.d2-2734330532 .fill-N5{fill:#DEE1EB;} .d2-2795922944 .fill-N5{fill:#DEE1EB;}
.d2-2734330532 .fill-N6{fill:#EEF1F8;} .d2-2795922944 .fill-N6{fill:#EEF1F8;}
.d2-2734330532 .fill-N7{fill:#FFFFFF;} .d2-2795922944 .fill-N7{fill:#FFFFFF;}
.d2-2734330532 .fill-B1{fill:#0D32B2;} .d2-2795922944 .fill-B1{fill:#0D32B2;}
.d2-2734330532 .fill-B2{fill:#0D32B2;} .d2-2795922944 .fill-B2{fill:#0D32B2;}
.d2-2734330532 .fill-B3{fill:#E3E9FD;} .d2-2795922944 .fill-B3{fill:#E3E9FD;}
.d2-2734330532 .fill-B4{fill:#E3E9FD;} .d2-2795922944 .fill-B4{fill:#E3E9FD;}
.d2-2734330532 .fill-B5{fill:#EDF0FD;} .d2-2795922944 .fill-B5{fill:#EDF0FD;}
.d2-2734330532 .fill-B6{fill:#F7F8FE;} .d2-2795922944 .fill-B6{fill:#F7F8FE;}
.d2-2734330532 .fill-AA2{fill:#4A6FF3;} .d2-2795922944 .fill-AA2{fill:#4A6FF3;}
.d2-2734330532 .fill-AA4{fill:#EDF0FD;} .d2-2795922944 .fill-AA4{fill:#EDF0FD;}
.d2-2734330532 .fill-AA5{fill:#F7F8FE;} .d2-2795922944 .fill-AA5{fill:#F7F8FE;}
.d2-2734330532 .fill-AB4{fill:#EDF0FD;} .d2-2795922944 .fill-AB4{fill:#EDF0FD;}
.d2-2734330532 .fill-AB5{fill:#F7F8FE;} .d2-2795922944 .fill-AB5{fill:#F7F8FE;}
.d2-2734330532 .stroke-N1{stroke:#0A0F25;} .d2-2795922944 .stroke-N1{stroke:#0A0F25;}
.d2-2734330532 .stroke-N2{stroke:#676C7E;} .d2-2795922944 .stroke-N2{stroke:#676C7E;}
.d2-2734330532 .stroke-N3{stroke:#9499AB;} .d2-2795922944 .stroke-N3{stroke:#9499AB;}
.d2-2734330532 .stroke-N4{stroke:#CFD2DD;} .d2-2795922944 .stroke-N4{stroke:#CFD2DD;}
.d2-2734330532 .stroke-N5{stroke:#DEE1EB;} .d2-2795922944 .stroke-N5{stroke:#DEE1EB;}
.d2-2734330532 .stroke-N6{stroke:#EEF1F8;} .d2-2795922944 .stroke-N6{stroke:#EEF1F8;}
.d2-2734330532 .stroke-N7{stroke:#FFFFFF;} .d2-2795922944 .stroke-N7{stroke:#FFFFFF;}
.d2-2734330532 .stroke-B1{stroke:#0D32B2;} .d2-2795922944 .stroke-B1{stroke:#0D32B2;}
.d2-2734330532 .stroke-B2{stroke:#0D32B2;} .d2-2795922944 .stroke-B2{stroke:#0D32B2;}
.d2-2734330532 .stroke-B3{stroke:#E3E9FD;} .d2-2795922944 .stroke-B3{stroke:#E3E9FD;}
.d2-2734330532 .stroke-B4{stroke:#E3E9FD;} .d2-2795922944 .stroke-B4{stroke:#E3E9FD;}
.d2-2734330532 .stroke-B5{stroke:#EDF0FD;} .d2-2795922944 .stroke-B5{stroke:#EDF0FD;}
.d2-2734330532 .stroke-B6{stroke:#F7F8FE;} .d2-2795922944 .stroke-B6{stroke:#F7F8FE;}
.d2-2734330532 .stroke-AA2{stroke:#4A6FF3;} .d2-2795922944 .stroke-AA2{stroke:#4A6FF3;}
.d2-2734330532 .stroke-AA4{stroke:#EDF0FD;} .d2-2795922944 .stroke-AA4{stroke:#EDF0FD;}
.d2-2734330532 .stroke-AA5{stroke:#F7F8FE;} .d2-2795922944 .stroke-AA5{stroke:#F7F8FE;}
.d2-2734330532 .stroke-AB4{stroke:#EDF0FD;} .d2-2795922944 .stroke-AB4{stroke:#EDF0FD;}
.d2-2734330532 .stroke-AB5{stroke:#F7F8FE;} .d2-2795922944 .stroke-AB5{stroke:#F7F8FE;}
.d2-2734330532 .background-color-N1{background-color:#0A0F25;} .d2-2795922944 .background-color-N1{background-color:#0A0F25;}
.d2-2734330532 .background-color-N2{background-color:#676C7E;} .d2-2795922944 .background-color-N2{background-color:#676C7E;}
.d2-2734330532 .background-color-N3{background-color:#9499AB;} .d2-2795922944 .background-color-N3{background-color:#9499AB;}
.d2-2734330532 .background-color-N4{background-color:#CFD2DD;} .d2-2795922944 .background-color-N4{background-color:#CFD2DD;}
.d2-2734330532 .background-color-N5{background-color:#DEE1EB;} .d2-2795922944 .background-color-N5{background-color:#DEE1EB;}
.d2-2734330532 .background-color-N6{background-color:#EEF1F8;} .d2-2795922944 .background-color-N6{background-color:#EEF1F8;}
.d2-2734330532 .background-color-N7{background-color:#FFFFFF;} .d2-2795922944 .background-color-N7{background-color:#FFFFFF;}
.d2-2734330532 .background-color-B1{background-color:#0D32B2;} .d2-2795922944 .background-color-B1{background-color:#0D32B2;}
.d2-2734330532 .background-color-B2{background-color:#0D32B2;} .d2-2795922944 .background-color-B2{background-color:#0D32B2;}
.d2-2734330532 .background-color-B3{background-color:#E3E9FD;} .d2-2795922944 .background-color-B3{background-color:#E3E9FD;}
.d2-2734330532 .background-color-B4{background-color:#E3E9FD;} .d2-2795922944 .background-color-B4{background-color:#E3E9FD;}
.d2-2734330532 .background-color-B5{background-color:#EDF0FD;} .d2-2795922944 .background-color-B5{background-color:#EDF0FD;}
.d2-2734330532 .background-color-B6{background-color:#F7F8FE;} .d2-2795922944 .background-color-B6{background-color:#F7F8FE;}
.d2-2734330532 .background-color-AA2{background-color:#4A6FF3;} .d2-2795922944 .background-color-AA2{background-color:#4A6FF3;}
.d2-2734330532 .background-color-AA4{background-color:#EDF0FD;} .d2-2795922944 .background-color-AA4{background-color:#EDF0FD;}
.d2-2734330532 .background-color-AA5{background-color:#F7F8FE;} .d2-2795922944 .background-color-AA5{background-color:#F7F8FE;}
.d2-2734330532 .background-color-AB4{background-color:#EDF0FD;} .d2-2795922944 .background-color-AB4{background-color:#EDF0FD;}
.d2-2734330532 .background-color-AB5{background-color:#F7F8FE;} .d2-2795922944 .background-color-AB5{background-color:#F7F8FE;}
.d2-2734330532 .color-N1{color:#0A0F25;} .d2-2795922944 .color-N1{color:#0A0F25;}
.d2-2734330532 .color-N2{color:#676C7E;} .d2-2795922944 .color-N2{color:#676C7E;}
.d2-2734330532 .color-N3{color:#9499AB;} .d2-2795922944 .color-N3{color:#9499AB;}
.d2-2734330532 .color-N4{color:#CFD2DD;} .d2-2795922944 .color-N4{color:#CFD2DD;}
.d2-2734330532 .color-N5{color:#DEE1EB;} .d2-2795922944 .color-N5{color:#DEE1EB;}
.d2-2734330532 .color-N6{color:#EEF1F8;} .d2-2795922944 .color-N6{color:#EEF1F8;}
.d2-2734330532 .color-N7{color:#FFFFFF;} .d2-2795922944 .color-N7{color:#FFFFFF;}
.d2-2734330532 .color-B1{color:#0D32B2;} .d2-2795922944 .color-B1{color:#0D32B2;}
.d2-2734330532 .color-B2{color:#0D32B2;} .d2-2795922944 .color-B2{color:#0D32B2;}
.d2-2734330532 .color-B3{color:#E3E9FD;} .d2-2795922944 .color-B3{color:#E3E9FD;}
.d2-2734330532 .color-B4{color:#E3E9FD;} .d2-2795922944 .color-B4{color:#E3E9FD;}
.d2-2734330532 .color-B5{color:#EDF0FD;} .d2-2795922944 .color-B5{color:#EDF0FD;}
.d2-2734330532 .color-B6{color:#F7F8FE;} .d2-2795922944 .color-B6{color:#F7F8FE;}
.d2-2734330532 .color-AA2{color:#4A6FF3;} .d2-2795922944 .color-AA2{color:#4A6FF3;}
.d2-2734330532 .color-AA4{color:#EDF0FD;} .d2-2795922944 .color-AA4{color:#EDF0FD;}
.d2-2734330532 .color-AA5{color:#F7F8FE;} .d2-2795922944 .color-AA5{color:#F7F8FE;}
.d2-2734330532 .color-AB4{color:#EDF0FD;} .d2-2795922944 .color-AB4{color:#EDF0FD;}
.d2-2734330532 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="0.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="26.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="184.000000" y="0.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="211.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="371.000000" y="0.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="397.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 55.000000 33.000000 C 105.400000 33.000000 131.700000 33.000000 180.500000 33.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2734330532)" /><text x="118.500000" y="39.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">sync</text></g><g id="(y -&gt; z)[0]"><path d="M 240.000000 33.000000 C 291.200000 33.000000 317.900000 33.000000 367.500000 33.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2734330532)" /><text x="304.500000" y="39.000000" class="text-bold fill-N2" style="text-anchor:middle;font-size:16px">sync</text></g><mask id="d2-2734330532" maskUnits="userSpaceOnUse" x="-1" y="-1" width="425" height="68"> .d2-2795922944 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="0.000000" y="0.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="26.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="184.000000" y="0.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="211.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="371.000000" y="0.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="397.000000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 55.000000 33.000000 C 105.400000 33.000000 131.700000 33.000000 180.500000 33.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2795922944)" /><text x="118.500000" y="39.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">sync</text></g><g id="(y -&gt; z)[0]"><path d="M 240.000000 33.000000 C 291.200000 33.000000 317.900000 33.000000 367.500000 33.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2795922944)" /><text x="304.500000" y="39.000000" class="text-bold fill-N2" style="text-anchor:middle;font-size:16px">sync</text></g><mask id="d2-2795922944" maskUnits="userSpaceOnUse" x="-1" y="-1" width="425" height="68">
<rect x="-1" y="-1" width="425" height="68" fill="white"></rect> <rect x="-1" y="-1" width="425" height="68" fill="white"></rect>
<rect x="103.000000" y="23.000000" width="31" height="21" fill="black"></rect> <rect x="103.000000" y="23.000000" width="31" height="21" fill="black"></rect>
<rect x="288.000000" y="23.000000" width="33" height="21" fill="black"></rect> <rect x="288.000000" y="23.000000" width="33" height="21" fill="black"></rect>

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -132,10 +132,8 @@
"id": "(x -> y)[0]", "id": "(x -> y)[0]",
"src": "x", "src": "x",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "y", "dst": "y",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -172,10 +170,8 @@
"id": "(y -> z)[0]", "id": "(y -> z)[0]",
"src": "y", "src": "y",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "z", "dst": "z",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

View file

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 505 68"><svg id="d2-svg" class="d2-2338416351" width="505" height="68" viewBox="11 11 505 68"><rect x="11.000000" y="11.000000" width="505.000000" height="68.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 505 68"><svg id="d2-svg" class="d2-2275583681" width="505" height="68" viewBox="11 11 505 68"><rect x="11.000000" y="11.000000" width="505.000000" height="68.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-2338416351 .text-bold { .d2-2275583681 .text-bold {
font-family: "d2-2338416351-font-bold"; font-family: "d2-2275583681-font-bold";
} }
@font-face { @font-face {
font-family: d2-2338416351-font-bold; font-family: d2-2275583681-font-bold;
src: url("data:application/font-woff;base64,d09GRgABAAAAAAe4AAoAAAAADKAAAguFAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgXxHXrmNtYXAAAAFUAAAATQAAAFIBGwEwZ2x5ZgAAAaQAAAIjAAACTCaVm4BoZWFkAAADyAAAADYAAAA2G38e1GhoZWEAAAQAAAAAJAAAACQKfwXGaG10eAAABCQAAAAcAAAAHA5TAQpsb2NhAAAEQAAAABAAAAAQAiACrm1heHAAAARQAAAAIAAAACAAHwD3bmFtZQAABHAAAAMoAAAIKgjwVkFwb3N0AAAHmAAAAB0AAAAg/9EAMgADAioCvAAFAAACigJYAAAASwKKAlgAAAFeADIBKQAAAgsHAwMEAwICBGAAAvcAAAADAAAAAAAAAABBREJPACAAIP//Au7/BgAAA9gBESAAAZ8AAAAAAfAClAAAACAAA3icNMurDYNgAEbR8z/aNE2H6i54DIYwAwKBZtWPhMBV1xwUTcFP98fXR1UNRpMl4f45yZE9W9ZLPBVV0728OQEAAP//AQAA//8iow5CAAAAeJxMz0FPE00cx/H/bJfddtmUbLuz0y603e7QmRZ4NjxMt2tFqEURTaxUDGiiWMNFjSaSoIb4HogmcsALXvTmxcQLJMbEsweMIb4A76YmxBNszYoH3sD39/lBH7QBpBVpE2KQgAFIAQYQRtEoCc6pGoggoCQWcGSobSkVvn3DK3KlIo84W4VnnQ5q3ZY2jx7ebK2s/O5MTobbO7vhBlrbBUAw3DtAH9Eh2AB9LmN+tVYTExZRGXUVbFpiohYQRUHZ2UfNi0/Pe3NDs9TxG43xjJc+XVrSp54sXHs8lSed3OXm2RYeuOMMAkTdJoAE6BDMyCmI+JvFBjWqUVk1muua7LQmrl56mXOGyhnUbeT/e7AcfkHFWjlLwvdRA/cO0Gt0CByAuIwHVsTxq4xxT/Kr/5yMuti0SF7CpvLt/7tsxm0UivmcZ+cny/cX69cLM3bVrteZM1W5p7PCrewgSRtWWtOH65XZJZ65YVo8k03207p3bvnYngRAB6gLWQCR5oJYVuQPAqESyhnjVFFUNbn1fHtMszQ5noq7Wy9ebY/rRJcTZoIj6Wcbj2I8itu9Xwt4DONRayHq6r1pdIS6MHjyTxDETizEktK6VRyw1VS8VNbUT5tz/SlNjhuJMxvvyKn5z4q8ivqGczb6se9eKNE5uh/2Ty+OHLsZAPqAupAAEH6a+kUcE5jt7aDVve/zyFu7En5dgz8AAAD//wEAAP//zvV3fgAAAQAAAAILhRlwkS1fDzz1AAED6AAAAADYXaCEAAAAAN1mLzb+N/7ECG0D8QABAAMAAgAAAAAAAAABAAAD2P7vAAAImP43/jcIbQABAAAAAAAAAAAAAAAAAAAABwKyAFAB0wAkAjwAQQG7ABUCAgAOAgkADAHMACYAAAAsAFgAegC2AOIBEgEmAAEAAAAHAJAADABjAAcAAQAAAAAAAAAAAAAAAAAEAAN4nJyUz24bVRTGf05s0wrBAkVVuonugkWR6NhUSdU2K4fUikUUB48LQkJIE8/4jzKeGXkmDuEJWPMWvEVXPATPgVij+Xzs2AXRJoqSfHfu+fOdc75zgR3+ZptK9SHwRz0xXGGvfm54iwf1E8PbtOtbhqs8qf1puEZYmxuu83mtZ/gj3lZ/M/yA/epPhh+yW20b/phn1R3Dn2w7/jL8Kfu8XeAKvOBXwxV2yQxvscOPhrd5hMWsVHlE03CNz9gzXGcP6DOhIGZCwgjHkAkjrpgRkeMTMWPCkIgQR4cWMYW+JgRCjtF/fg3wKZgRKOKYAkeMT0xAztgi/iKvlHNlHOo0s7sWBWMCLuRxSUCCI2VESkLEpeIUFGS8okGDnIH4ZhTkeORMiPFImTGiQZc2p/QZMyHH0VakkplPypCCawLld2ZRdmZAREJurK5ICMXTiV8k7w6nOLpksl2PfLoR4Usc38m75JbK9is8/bo1Zpt5l2wC5upnrK7EurnWBMe6LfO2+Fa44BXuXv3ZZPL+HoX6XyjyBVeaf6hJJWKS4NwuLXwpyHePcRzp3MFXR76nQ58Turyhr3OLHj1anNGnw2v5dunh+JouZxzLoyO8uGtLMWf8gOMbOrIpY0fWn8XEIn4mM3Xn4jhTHVMy9bxk7qnWSBXefcLlDqUb6sjlM9AelZZO80u0ZwEjU0UmhlP1cqmN3PoXmiKmqqWc7e19uQ1z273lFt+QaodLtS44lZNbMHrfVL13NHOtH4+AkJQLWQxImdKg4Ea8zwm4IsZxrO6daEsKWiufMs+NVBIxFYMOieLMyPQ3MN34xn2woXtnb0ko/5Lp5aqq+2Rx6tXtjN6oe8s737ocrU2gYVNN19Q0ENfEtB9pp9b5+/LN9bqlPOWIlJjwXy/AMzya7HPAIWNlGOhmbq9DUy9Ek5ccqvpLIlkNpefIIhzg8ZwDDnjJ83f6uGTijItbcVnP3eKYI7ocflAVC/suR7xeffv/rL+LaVO1OJ6uTi/uPcUnd1DrF9qz2/eyp4mVk5hbtNutOCNgWnJxu+s1ucd4/wAAAP//AQAA///0t09ReJxiYGYAg//nGIwYsAAAAAAA//8BAAD//y8BAgMAAAA="); src: url("data:application/font-woff;base64,d09GRgABAAAAAAe4AAoAAAAADKAAAguFAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgXxHXrmNtYXAAAAFUAAAATQAAAFIBGwEwZ2x5ZgAAAaQAAAIjAAACTCaVm4BoZWFkAAADyAAAADYAAAA2G38e1GhoZWEAAAQAAAAAJAAAACQKfwXGaG10eAAABCQAAAAcAAAAHA5TAQpsb2NhAAAEQAAAABAAAAAQAiACrm1heHAAAARQAAAAIAAAACAAHwD3bmFtZQAABHAAAAMoAAAIKgjwVkFwb3N0AAAHmAAAAB0AAAAg/9EAMgADAioCvAAFAAACigJYAAAASwKKAlgAAAFeADIBKQAAAgsHAwMEAwICBGAAAvcAAAADAAAAAAAAAABBREJPACAAIP//Au7/BgAAA9gBESAAAZ8AAAAAAfAClAAAACAAA3icNMurDYNgAEbR8z/aNE2H6i54DIYwAwKBZtWPhMBV1xwUTcFP98fXR1UNRpMl4f45yZE9W9ZLPBVV0728OQEAAP//AQAA//8iow5CAAAAeJxMz0FPE00cx/H/bJfddtmUbLuz0y603e7QmRZ4NjxMt2tFqEURTaxUDGiiWMNFjSaSoIb4HogmcsALXvTmxcQLJMbEsweMIb4A76YmxBNszYoH3sD39/lBH7QBpBVpE2KQgAFIAQYQRtEoCc6pGoggoCQWcGSobSkVvn3DK3KlIo84W4VnnQ5q3ZY2jx7ebK2s/O5MTobbO7vhBlrbBUAw3DtAH9Eh2AB9LmN+tVYTExZRGXUVbFpiohYQRUHZ2UfNi0/Pe3NDs9TxG43xjJc+XVrSp54sXHs8lSed3OXm2RYeuOMMAkTdJoAE6BDMyCmI+JvFBjWqUVk1muua7LQmrl56mXOGyhnUbeT/e7AcfkHFWjlLwvdRA/cO0Gt0CByAuIwHVsTxq4xxT/Kr/5yMuti0SF7CpvLt/7tsxm0UivmcZ+cny/cX69cLM3bVrteZM1W5p7PCrewgSRtWWtOH65XZJZ65YVo8k03207p3bvnYngRAB6gLWQCR5oJYVuQPAqESyhnjVFFUNbn1fHtMszQ5noq7Wy9ebY/rRJcTZoIj6Wcbj2I8itu9Xwt4DONRayHq6r1pdIS6MHjyTxDETizEktK6VRyw1VS8VNbUT5tz/SlNjhuJMxvvyKn5z4q8ivqGczb6se9eKNE5uh/2Ty+OHLsZAPqAupAAEH6a+kUcE5jt7aDVve/zyFu7En5dgz8AAAD//wEAAP//zvV3fgAAAQAAAAILhRlwkS1fDzz1AAED6AAAAADYXaCEAAAAAN1mLzb+N/7ECG0D8QABAAMAAgAAAAAAAAABAAAD2P7vAAAImP43/jcIbQABAAAAAAAAAAAAAAAAAAAABwKyAFAB0wAkAjwAQQG7ABUCAgAOAgkADAHMACYAAAAsAFgAegC2AOIBEgEmAAEAAAAHAJAADABjAAcAAQAAAAAAAAAAAAAAAAAEAAN4nJyUz24bVRTGf05s0wrBAkVVuonugkWR6NhUSdU2K4fUikUUB48LQkJIE8/4jzKeGXkmDuEJWPMWvEVXPATPgVij+Xzs2AXRJoqSfHfu+fOdc75zgR3+ZptK9SHwRz0xXGGvfm54iwf1E8PbtOtbhqs8qf1puEZYmxuu83mtZ/gj3lZ/M/yA/epPhh+yW20b/phn1R3Dn2w7/jL8Kfu8XeAKvOBXwxV2yQxvscOPhrd5hMWsVHlE03CNz9gzXGcP6DOhIGZCwgjHkAkjrpgRkeMTMWPCkIgQR4cWMYW+JgRCjtF/fg3wKZgRKOKYAkeMT0xAztgi/iKvlHNlHOo0s7sWBWMCLuRxSUCCI2VESkLEpeIUFGS8okGDnIH4ZhTkeORMiPFImTGiQZc2p/QZMyHH0VakkplPypCCawLld2ZRdmZAREJurK5ICMXTiV8k7w6nOLpksl2PfLoR4Usc38m75JbK9is8/bo1Zpt5l2wC5upnrK7EurnWBMe6LfO2+Fa44BXuXv3ZZPL+HoX6XyjyBVeaf6hJJWKS4NwuLXwpyHePcRzp3MFXR76nQ58Turyhr3OLHj1anNGnw2v5dunh+JouZxzLoyO8uGtLMWf8gOMbOrIpY0fWn8XEIn4mM3Xn4jhTHVMy9bxk7qnWSBXefcLlDqUb6sjlM9AelZZO80u0ZwEjU0UmhlP1cqmN3PoXmiKmqqWc7e19uQ1z273lFt+QaodLtS44lZNbMHrfVL13NHOtH4+AkJQLWQxImdKg4Ea8zwm4IsZxrO6daEsKWiufMs+NVBIxFYMOieLMyPQ3MN34xn2woXtnb0ko/5Lp5aqq+2Rx6tXtjN6oe8s737ocrU2gYVNN19Q0ENfEtB9pp9b5+/LN9bqlPOWIlJjwXy/AMzya7HPAIWNlGOhmbq9DUy9Ek5ccqvpLIlkNpefIIhzg8ZwDDnjJ83f6uGTijItbcVnP3eKYI7ocflAVC/suR7xeffv/rL+LaVO1OJ6uTi/uPcUnd1DrF9qz2/eyp4mVk5hbtNutOCNgWnJxu+s1ucd4/wAAAP//AQAA///0t09ReJxiYGYAg//nGIwYsAAAAAAA//8BAAD//y8BAgMAAAA=");
} }
.d2-2338416351 .text-italic { .d2-2275583681 .text-italic {
font-family: "d2-2338416351-font-italic"; font-family: "d2-2275583681-font-italic";
} }
@font-face { @font-face {
font-family: d2-2338416351-font-italic; font-family: d2-2275583681-font-italic;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -25,78 +25,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-2338416351 .fill-N1{fill:#0A0F25;} .d2-2275583681 .fill-N1{fill:#0A0F25;}
.d2-2338416351 .fill-N2{fill:#676C7E;} .d2-2275583681 .fill-N2{fill:#676C7E;}
.d2-2338416351 .fill-N3{fill:#9499AB;} .d2-2275583681 .fill-N3{fill:#9499AB;}
.d2-2338416351 .fill-N4{fill:#CFD2DD;} .d2-2275583681 .fill-N4{fill:#CFD2DD;}
.d2-2338416351 .fill-N5{fill:#DEE1EB;} .d2-2275583681 .fill-N5{fill:#DEE1EB;}
.d2-2338416351 .fill-N6{fill:#EEF1F8;} .d2-2275583681 .fill-N6{fill:#EEF1F8;}
.d2-2338416351 .fill-N7{fill:#FFFFFF;} .d2-2275583681 .fill-N7{fill:#FFFFFF;}
.d2-2338416351 .fill-B1{fill:#0D32B2;} .d2-2275583681 .fill-B1{fill:#0D32B2;}
.d2-2338416351 .fill-B2{fill:#0D32B2;} .d2-2275583681 .fill-B2{fill:#0D32B2;}
.d2-2338416351 .fill-B3{fill:#E3E9FD;} .d2-2275583681 .fill-B3{fill:#E3E9FD;}
.d2-2338416351 .fill-B4{fill:#E3E9FD;} .d2-2275583681 .fill-B4{fill:#E3E9FD;}
.d2-2338416351 .fill-B5{fill:#EDF0FD;} .d2-2275583681 .fill-B5{fill:#EDF0FD;}
.d2-2338416351 .fill-B6{fill:#F7F8FE;} .d2-2275583681 .fill-B6{fill:#F7F8FE;}
.d2-2338416351 .fill-AA2{fill:#4A6FF3;} .d2-2275583681 .fill-AA2{fill:#4A6FF3;}
.d2-2338416351 .fill-AA4{fill:#EDF0FD;} .d2-2275583681 .fill-AA4{fill:#EDF0FD;}
.d2-2338416351 .fill-AA5{fill:#F7F8FE;} .d2-2275583681 .fill-AA5{fill:#F7F8FE;}
.d2-2338416351 .fill-AB4{fill:#EDF0FD;} .d2-2275583681 .fill-AB4{fill:#EDF0FD;}
.d2-2338416351 .fill-AB5{fill:#F7F8FE;} .d2-2275583681 .fill-AB5{fill:#F7F8FE;}
.d2-2338416351 .stroke-N1{stroke:#0A0F25;} .d2-2275583681 .stroke-N1{stroke:#0A0F25;}
.d2-2338416351 .stroke-N2{stroke:#676C7E;} .d2-2275583681 .stroke-N2{stroke:#676C7E;}
.d2-2338416351 .stroke-N3{stroke:#9499AB;} .d2-2275583681 .stroke-N3{stroke:#9499AB;}
.d2-2338416351 .stroke-N4{stroke:#CFD2DD;} .d2-2275583681 .stroke-N4{stroke:#CFD2DD;}
.d2-2338416351 .stroke-N5{stroke:#DEE1EB;} .d2-2275583681 .stroke-N5{stroke:#DEE1EB;}
.d2-2338416351 .stroke-N6{stroke:#EEF1F8;} .d2-2275583681 .stroke-N6{stroke:#EEF1F8;}
.d2-2338416351 .stroke-N7{stroke:#FFFFFF;} .d2-2275583681 .stroke-N7{stroke:#FFFFFF;}
.d2-2338416351 .stroke-B1{stroke:#0D32B2;} .d2-2275583681 .stroke-B1{stroke:#0D32B2;}
.d2-2338416351 .stroke-B2{stroke:#0D32B2;} .d2-2275583681 .stroke-B2{stroke:#0D32B2;}
.d2-2338416351 .stroke-B3{stroke:#E3E9FD;} .d2-2275583681 .stroke-B3{stroke:#E3E9FD;}
.d2-2338416351 .stroke-B4{stroke:#E3E9FD;} .d2-2275583681 .stroke-B4{stroke:#E3E9FD;}
.d2-2338416351 .stroke-B5{stroke:#EDF0FD;} .d2-2275583681 .stroke-B5{stroke:#EDF0FD;}
.d2-2338416351 .stroke-B6{stroke:#F7F8FE;} .d2-2275583681 .stroke-B6{stroke:#F7F8FE;}
.d2-2338416351 .stroke-AA2{stroke:#4A6FF3;} .d2-2275583681 .stroke-AA2{stroke:#4A6FF3;}
.d2-2338416351 .stroke-AA4{stroke:#EDF0FD;} .d2-2275583681 .stroke-AA4{stroke:#EDF0FD;}
.d2-2338416351 .stroke-AA5{stroke:#F7F8FE;} .d2-2275583681 .stroke-AA5{stroke:#F7F8FE;}
.d2-2338416351 .stroke-AB4{stroke:#EDF0FD;} .d2-2275583681 .stroke-AB4{stroke:#EDF0FD;}
.d2-2338416351 .stroke-AB5{stroke:#F7F8FE;} .d2-2275583681 .stroke-AB5{stroke:#F7F8FE;}
.d2-2338416351 .background-color-N1{background-color:#0A0F25;} .d2-2275583681 .background-color-N1{background-color:#0A0F25;}
.d2-2338416351 .background-color-N2{background-color:#676C7E;} .d2-2275583681 .background-color-N2{background-color:#676C7E;}
.d2-2338416351 .background-color-N3{background-color:#9499AB;} .d2-2275583681 .background-color-N3{background-color:#9499AB;}
.d2-2338416351 .background-color-N4{background-color:#CFD2DD;} .d2-2275583681 .background-color-N4{background-color:#CFD2DD;}
.d2-2338416351 .background-color-N5{background-color:#DEE1EB;} .d2-2275583681 .background-color-N5{background-color:#DEE1EB;}
.d2-2338416351 .background-color-N6{background-color:#EEF1F8;} .d2-2275583681 .background-color-N6{background-color:#EEF1F8;}
.d2-2338416351 .background-color-N7{background-color:#FFFFFF;} .d2-2275583681 .background-color-N7{background-color:#FFFFFF;}
.d2-2338416351 .background-color-B1{background-color:#0D32B2;} .d2-2275583681 .background-color-B1{background-color:#0D32B2;}
.d2-2338416351 .background-color-B2{background-color:#0D32B2;} .d2-2275583681 .background-color-B2{background-color:#0D32B2;}
.d2-2338416351 .background-color-B3{background-color:#E3E9FD;} .d2-2275583681 .background-color-B3{background-color:#E3E9FD;}
.d2-2338416351 .background-color-B4{background-color:#E3E9FD;} .d2-2275583681 .background-color-B4{background-color:#E3E9FD;}
.d2-2338416351 .background-color-B5{background-color:#EDF0FD;} .d2-2275583681 .background-color-B5{background-color:#EDF0FD;}
.d2-2338416351 .background-color-B6{background-color:#F7F8FE;} .d2-2275583681 .background-color-B6{background-color:#F7F8FE;}
.d2-2338416351 .background-color-AA2{background-color:#4A6FF3;} .d2-2275583681 .background-color-AA2{background-color:#4A6FF3;}
.d2-2338416351 .background-color-AA4{background-color:#EDF0FD;} .d2-2275583681 .background-color-AA4{background-color:#EDF0FD;}
.d2-2338416351 .background-color-AA5{background-color:#F7F8FE;} .d2-2275583681 .background-color-AA5{background-color:#F7F8FE;}
.d2-2338416351 .background-color-AB4{background-color:#EDF0FD;} .d2-2275583681 .background-color-AB4{background-color:#EDF0FD;}
.d2-2338416351 .background-color-AB5{background-color:#F7F8FE;} .d2-2275583681 .background-color-AB5{background-color:#F7F8FE;}
.d2-2338416351 .color-N1{color:#0A0F25;} .d2-2275583681 .color-N1{color:#0A0F25;}
.d2-2338416351 .color-N2{color:#676C7E;} .d2-2275583681 .color-N2{color:#676C7E;}
.d2-2338416351 .color-N3{color:#9499AB;} .d2-2275583681 .color-N3{color:#9499AB;}
.d2-2338416351 .color-N4{color:#CFD2DD;} .d2-2275583681 .color-N4{color:#CFD2DD;}
.d2-2338416351 .color-N5{color:#DEE1EB;} .d2-2275583681 .color-N5{color:#DEE1EB;}
.d2-2338416351 .color-N6{color:#EEF1F8;} .d2-2275583681 .color-N6{color:#EEF1F8;}
.d2-2338416351 .color-N7{color:#FFFFFF;} .d2-2275583681 .color-N7{color:#FFFFFF;}
.d2-2338416351 .color-B1{color:#0D32B2;} .d2-2275583681 .color-B1{color:#0D32B2;}
.d2-2338416351 .color-B2{color:#0D32B2;} .d2-2275583681 .color-B2{color:#0D32B2;}
.d2-2338416351 .color-B3{color:#E3E9FD;} .d2-2275583681 .color-B3{color:#E3E9FD;}
.d2-2338416351 .color-B4{color:#E3E9FD;} .d2-2275583681 .color-B4{color:#E3E9FD;}
.d2-2338416351 .color-B5{color:#EDF0FD;} .d2-2275583681 .color-B5{color:#EDF0FD;}
.d2-2338416351 .color-B6{color:#F7F8FE;} .d2-2275583681 .color-B6{color:#F7F8FE;}
.d2-2338416351 .color-AA2{color:#4A6FF3;} .d2-2275583681 .color-AA2{color:#4A6FF3;}
.d2-2338416351 .color-AA4{color:#EDF0FD;} .d2-2275583681 .color-AA4{color:#EDF0FD;}
.d2-2338416351 .color-AA5{color:#F7F8FE;} .d2-2275583681 .color-AA5{color:#F7F8FE;}
.d2-2338416351 .color-AB4{color:#EDF0FD;} .d2-2275583681 .color-AB4{color:#EDF0FD;}
.d2-2338416351 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="12.000000" y="12.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="38.500000" y="50.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="236.000000" y="12.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="263.000000" y="50.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="463.000000" y="12.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="489.000000" y="50.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 67.000000 45.000000 L 232.000000 45.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2338416351)" /><text x="150.500000" y="51.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">sync</text></g><g id="(y -&gt; z)[0]"><path d="M 292.000000 45.000000 L 459.000000 45.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2338416351)" /><text x="376.500000" y="51.000000" class="text-bold fill-N2" style="text-anchor:middle;font-size:16px">sync</text></g><mask id="d2-2338416351" maskUnits="userSpaceOnUse" x="11" y="11" width="505" height="68"> .d2-2275583681 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="x"><g class="shape" ><rect x="12.000000" y="12.000000" width="53.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="38.500000" y="50.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">x</text></g><g id="y"><g class="shape" ><rect x="236.000000" y="12.000000" width="54.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="263.000000" y="50.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">y</text></g><g id="z"><g class="shape" ><rect x="463.000000" y="12.000000" width="52.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="489.000000" y="50.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">z</text></g><g id="(x -&gt; y)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 67.000000 45.000000 L 232.000000 45.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2275583681)" /><text x="150.500000" y="51.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">sync</text></g><g id="(y -&gt; z)[0]"><path d="M 292.000000 45.000000 L 459.000000 45.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-2275583681)" /><text x="376.500000" y="51.000000" class="text-bold fill-N2" style="text-anchor:middle;font-size:16px">sync</text></g><mask id="d2-2275583681" maskUnits="userSpaceOnUse" x="11" y="11" width="505" height="68">
<rect x="11" y="11" width="505" height="68" fill="white"></rect> <rect x="11" y="11" width="505" height="68" fill="white"></rect>
<rect x="135.000000" y="35.000000" width="31" height="21" fill="black"></rect> <rect x="135.000000" y="35.000000" width="31" height="21" fill="black"></rect>
<rect x="360.000000" y="35.000000" width="33" height="21" fill="black"></rect> <rect x="360.000000" y="35.000000" width="33" height="21" fill="black"></rect>

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -53,10 +53,8 @@
"id": "(a -- )[0]", "id": "(a -- )[0]",
"src": "a", "src": "a",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a-lifeline-end-2251863791", "dst": "a-lifeline-end-2251863791",
"dstArrow": "none", "dstArrow": "none",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 6, "strokeDash": 6,
"strokeWidth": 2, "strokeWidth": 2,

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 119 164"><svg id="d2-svg" class="d2-878916677" width="119" height="164" viewBox="11 51 119 164"><rect x="11.000000" y="51.000000" width="119.000000" height="164.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 119 164"><svg id="d2-svg" class="d2-613552038" width="119" height="164" viewBox="11 51 119 164"><rect x="11.000000" y="51.000000" width="119.000000" height="164.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-878916677 .text-mono { .d2-613552038 .text-mono {
font-family: "d2-878916677-font-mono"; font-family: "d2-613552038-font-mono";
} }
@font-face { @font-face {
font-family: d2-878916677-font-mono; font-family: d2-613552038-font-mono;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-878916677 .fill-N1{fill:#0A0F25;} .d2-613552038 .fill-N1{fill:#0A0F25;}
.d2-878916677 .fill-N2{fill:#676C7E;} .d2-613552038 .fill-N2{fill:#676C7E;}
.d2-878916677 .fill-N3{fill:#9499AB;} .d2-613552038 .fill-N3{fill:#9499AB;}
.d2-878916677 .fill-N4{fill:#CFD2DD;} .d2-613552038 .fill-N4{fill:#CFD2DD;}
.d2-878916677 .fill-N5{fill:#DEE1EB;} .d2-613552038 .fill-N5{fill:#DEE1EB;}
.d2-878916677 .fill-N6{fill:#EEF1F8;} .d2-613552038 .fill-N6{fill:#EEF1F8;}
.d2-878916677 .fill-N7{fill:#FFFFFF;} .d2-613552038 .fill-N7{fill:#FFFFFF;}
.d2-878916677 .fill-B1{fill:#0D32B2;} .d2-613552038 .fill-B1{fill:#0D32B2;}
.d2-878916677 .fill-B2{fill:#0D32B2;} .d2-613552038 .fill-B2{fill:#0D32B2;}
.d2-878916677 .fill-B3{fill:#E3E9FD;} .d2-613552038 .fill-B3{fill:#E3E9FD;}
.d2-878916677 .fill-B4{fill:#E3E9FD;} .d2-613552038 .fill-B4{fill:#E3E9FD;}
.d2-878916677 .fill-B5{fill:#EDF0FD;} .d2-613552038 .fill-B5{fill:#EDF0FD;}
.d2-878916677 .fill-B6{fill:#F7F8FE;} .d2-613552038 .fill-B6{fill:#F7F8FE;}
.d2-878916677 .fill-AA2{fill:#4A6FF3;} .d2-613552038 .fill-AA2{fill:#4A6FF3;}
.d2-878916677 .fill-AA4{fill:#EDF0FD;} .d2-613552038 .fill-AA4{fill:#EDF0FD;}
.d2-878916677 .fill-AA5{fill:#F7F8FE;} .d2-613552038 .fill-AA5{fill:#F7F8FE;}
.d2-878916677 .fill-AB4{fill:#EDF0FD;} .d2-613552038 .fill-AB4{fill:#EDF0FD;}
.d2-878916677 .fill-AB5{fill:#F7F8FE;} .d2-613552038 .fill-AB5{fill:#F7F8FE;}
.d2-878916677 .stroke-N1{stroke:#0A0F25;} .d2-613552038 .stroke-N1{stroke:#0A0F25;}
.d2-878916677 .stroke-N2{stroke:#676C7E;} .d2-613552038 .stroke-N2{stroke:#676C7E;}
.d2-878916677 .stroke-N3{stroke:#9499AB;} .d2-613552038 .stroke-N3{stroke:#9499AB;}
.d2-878916677 .stroke-N4{stroke:#CFD2DD;} .d2-613552038 .stroke-N4{stroke:#CFD2DD;}
.d2-878916677 .stroke-N5{stroke:#DEE1EB;} .d2-613552038 .stroke-N5{stroke:#DEE1EB;}
.d2-878916677 .stroke-N6{stroke:#EEF1F8;} .d2-613552038 .stroke-N6{stroke:#EEF1F8;}
.d2-878916677 .stroke-N7{stroke:#FFFFFF;} .d2-613552038 .stroke-N7{stroke:#FFFFFF;}
.d2-878916677 .stroke-B1{stroke:#0D32B2;} .d2-613552038 .stroke-B1{stroke:#0D32B2;}
.d2-878916677 .stroke-B2{stroke:#0D32B2;} .d2-613552038 .stroke-B2{stroke:#0D32B2;}
.d2-878916677 .stroke-B3{stroke:#E3E9FD;} .d2-613552038 .stroke-B3{stroke:#E3E9FD;}
.d2-878916677 .stroke-B4{stroke:#E3E9FD;} .d2-613552038 .stroke-B4{stroke:#E3E9FD;}
.d2-878916677 .stroke-B5{stroke:#EDF0FD;} .d2-613552038 .stroke-B5{stroke:#EDF0FD;}
.d2-878916677 .stroke-B6{stroke:#F7F8FE;} .d2-613552038 .stroke-B6{stroke:#F7F8FE;}
.d2-878916677 .stroke-AA2{stroke:#4A6FF3;} .d2-613552038 .stroke-AA2{stroke:#4A6FF3;}
.d2-878916677 .stroke-AA4{stroke:#EDF0FD;} .d2-613552038 .stroke-AA4{stroke:#EDF0FD;}
.d2-878916677 .stroke-AA5{stroke:#F7F8FE;} .d2-613552038 .stroke-AA5{stroke:#F7F8FE;}
.d2-878916677 .stroke-AB4{stroke:#EDF0FD;} .d2-613552038 .stroke-AB4{stroke:#EDF0FD;}
.d2-878916677 .stroke-AB5{stroke:#F7F8FE;} .d2-613552038 .stroke-AB5{stroke:#F7F8FE;}
.d2-878916677 .background-color-N1{background-color:#0A0F25;} .d2-613552038 .background-color-N1{background-color:#0A0F25;}
.d2-878916677 .background-color-N2{background-color:#676C7E;} .d2-613552038 .background-color-N2{background-color:#676C7E;}
.d2-878916677 .background-color-N3{background-color:#9499AB;} .d2-613552038 .background-color-N3{background-color:#9499AB;}
.d2-878916677 .background-color-N4{background-color:#CFD2DD;} .d2-613552038 .background-color-N4{background-color:#CFD2DD;}
.d2-878916677 .background-color-N5{background-color:#DEE1EB;} .d2-613552038 .background-color-N5{background-color:#DEE1EB;}
.d2-878916677 .background-color-N6{background-color:#EEF1F8;} .d2-613552038 .background-color-N6{background-color:#EEF1F8;}
.d2-878916677 .background-color-N7{background-color:#FFFFFF;} .d2-613552038 .background-color-N7{background-color:#FFFFFF;}
.d2-878916677 .background-color-B1{background-color:#0D32B2;} .d2-613552038 .background-color-B1{background-color:#0D32B2;}
.d2-878916677 .background-color-B2{background-color:#0D32B2;} .d2-613552038 .background-color-B2{background-color:#0D32B2;}
.d2-878916677 .background-color-B3{background-color:#E3E9FD;} .d2-613552038 .background-color-B3{background-color:#E3E9FD;}
.d2-878916677 .background-color-B4{background-color:#E3E9FD;} .d2-613552038 .background-color-B4{background-color:#E3E9FD;}
.d2-878916677 .background-color-B5{background-color:#EDF0FD;} .d2-613552038 .background-color-B5{background-color:#EDF0FD;}
.d2-878916677 .background-color-B6{background-color:#F7F8FE;} .d2-613552038 .background-color-B6{background-color:#F7F8FE;}
.d2-878916677 .background-color-AA2{background-color:#4A6FF3;} .d2-613552038 .background-color-AA2{background-color:#4A6FF3;}
.d2-878916677 .background-color-AA4{background-color:#EDF0FD;} .d2-613552038 .background-color-AA4{background-color:#EDF0FD;}
.d2-878916677 .background-color-AA5{background-color:#F7F8FE;} .d2-613552038 .background-color-AA5{background-color:#F7F8FE;}
.d2-878916677 .background-color-AB4{background-color:#EDF0FD;} .d2-613552038 .background-color-AB4{background-color:#EDF0FD;}
.d2-878916677 .background-color-AB5{background-color:#F7F8FE;} .d2-613552038 .background-color-AB5{background-color:#F7F8FE;}
.d2-878916677 .color-N1{color:#0A0F25;} .d2-613552038 .color-N1{color:#0A0F25;}
.d2-878916677 .color-N2{color:#676C7E;} .d2-613552038 .color-N2{color:#676C7E;}
.d2-878916677 .color-N3{color:#9499AB;} .d2-613552038 .color-N3{color:#9499AB;}
.d2-878916677 .color-N4{color:#CFD2DD;} .d2-613552038 .color-N4{color:#CFD2DD;}
.d2-878916677 .color-N5{color:#DEE1EB;} .d2-613552038 .color-N5{color:#DEE1EB;}
.d2-878916677 .color-N6{color:#EEF1F8;} .d2-613552038 .color-N6{color:#EEF1F8;}
.d2-878916677 .color-N7{color:#FFFFFF;} .d2-613552038 .color-N7{color:#FFFFFF;}
.d2-878916677 .color-B1{color:#0D32B2;} .d2-613552038 .color-B1{color:#0D32B2;}
.d2-878916677 .color-B2{color:#0D32B2;} .d2-613552038 .color-B2{color:#0D32B2;}
.d2-878916677 .color-B3{color:#E3E9FD;} .d2-613552038 .color-B3{color:#E3E9FD;}
.d2-878916677 .color-B4{color:#E3E9FD;} .d2-613552038 .color-B4{color:#E3E9FD;}
.d2-878916677 .color-B5{color:#EDF0FD;} .d2-613552038 .color-B5{color:#EDF0FD;}
.d2-878916677 .color-B6{color:#F7F8FE;} .d2-613552038 .color-B6{color:#F7F8FE;}
.d2-878916677 .color-AA2{color:#4A6FF3;} .d2-613552038 .color-AA2{color:#4A6FF3;}
.d2-878916677 .color-AA4{color:#EDF0FD;} .d2-613552038 .color-AA4{color:#EDF0FD;}
.d2-878916677 .color-AA5{color:#F7F8FE;} .d2-613552038 .color-AA5{color:#F7F8FE;}
.d2-878916677 .color-AB4{color:#EDF0FD;} .d2-613552038 .color-AB4{color:#EDF0FD;}
.d2-878916677 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="a"><g class="shape" ><rect x="12.000000" y="52.000000" width="117.000000" height="92.000000" class=" stroke-N1 fill-N7" style="stroke-width:2;" /><rect x="12.000000" y="52.000000" width="117.000000" height="92.000000" class="class_header fill-N1" /><text x="70.500000" y="105.750000" fill="red" class="text-mono" style="text-anchor:middle;font-size:24px;">a</text><line x1="12.000000" x2="129.000000" y1="144.000000" y2="144.000000" class=" stroke-N1" style="stroke-width:1" /></g></g><g id="(a -- )[0]"><path d="M 70.500000 146.000000 L 70.500000 213.000000" fill="none" class="connection stroke-B2" style="stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#d2-878916677)" /></g><mask id="d2-878916677" maskUnits="userSpaceOnUse" x="11" y="51" width="119" height="164"> .d2-613552038 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="a"><g class="shape" ><rect x="12.000000" y="52.000000" width="117.000000" height="92.000000" class=" stroke-N1 fill-N7" style="stroke-width:2;" /><rect x="12.000000" y="52.000000" width="117.000000" height="92.000000" class="class_header fill-N1" /><text x="70.500000" y="105.750000" fill="red" class="text-mono" style="text-anchor:middle;font-size:24px;">a</text><line x1="12.000000" x2="129.000000" y1="144.000000" y2="144.000000" class=" stroke-N1" style="stroke-width:1" /></g></g><g id="(a -- )[0]"><path d="M 70.500000 146.000000 L 70.500000 213.000000" fill="none" class="connection stroke-B2" style="stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#d2-613552038)" /></g><mask id="d2-613552038" maskUnits="userSpaceOnUse" x="11" y="51" width="119" height="164">
<rect x="11" y="51" width="119" height="164" fill="white"></rect> <rect x="11" y="51" width="119" height="164" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 9.9 KiB

After

Width:  |  Height:  |  Size: 9.9 KiB

View file

@ -53,10 +53,8 @@
"id": "(a -- )[0]", "id": "(a -- )[0]",
"src": "a", "src": "a",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a-lifeline-end-2251863791", "dst": "a-lifeline-end-2251863791",
"dstArrow": "none", "dstArrow": "none",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 6, "strokeDash": 6,
"strokeWidth": 2, "strokeWidth": 2,

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 119 164"><svg id="d2-svg" class="d2-878916677" width="119" height="164" viewBox="11 51 119 164"><rect x="11.000000" y="51.000000" width="119.000000" height="164.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[ <?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.4.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 119 164"><svg id="d2-svg" class="d2-613552038" width="119" height="164" viewBox="11 51 119 164"><rect x="11.000000" y="51.000000" width="119.000000" height="164.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-878916677 .text-mono { .d2-613552038 .text-mono {
font-family: "d2-878916677-font-mono"; font-family: "d2-613552038-font-mono";
} }
@font-face { @font-face {
font-family: d2-878916677-font-mono; font-family: d2-613552038-font-mono;
src: url("data:application/font-woff;base64,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"); src: url("data:application/font-woff;base64,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");
}]]></style><style type="text/css"><![CDATA[.shape { }]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -18,78 +18,78 @@
opacity: 0.5; opacity: 0.5;
} }
.d2-878916677 .fill-N1{fill:#0A0F25;} .d2-613552038 .fill-N1{fill:#0A0F25;}
.d2-878916677 .fill-N2{fill:#676C7E;} .d2-613552038 .fill-N2{fill:#676C7E;}
.d2-878916677 .fill-N3{fill:#9499AB;} .d2-613552038 .fill-N3{fill:#9499AB;}
.d2-878916677 .fill-N4{fill:#CFD2DD;} .d2-613552038 .fill-N4{fill:#CFD2DD;}
.d2-878916677 .fill-N5{fill:#DEE1EB;} .d2-613552038 .fill-N5{fill:#DEE1EB;}
.d2-878916677 .fill-N6{fill:#EEF1F8;} .d2-613552038 .fill-N6{fill:#EEF1F8;}
.d2-878916677 .fill-N7{fill:#FFFFFF;} .d2-613552038 .fill-N7{fill:#FFFFFF;}
.d2-878916677 .fill-B1{fill:#0D32B2;} .d2-613552038 .fill-B1{fill:#0D32B2;}
.d2-878916677 .fill-B2{fill:#0D32B2;} .d2-613552038 .fill-B2{fill:#0D32B2;}
.d2-878916677 .fill-B3{fill:#E3E9FD;} .d2-613552038 .fill-B3{fill:#E3E9FD;}
.d2-878916677 .fill-B4{fill:#E3E9FD;} .d2-613552038 .fill-B4{fill:#E3E9FD;}
.d2-878916677 .fill-B5{fill:#EDF0FD;} .d2-613552038 .fill-B5{fill:#EDF0FD;}
.d2-878916677 .fill-B6{fill:#F7F8FE;} .d2-613552038 .fill-B6{fill:#F7F8FE;}
.d2-878916677 .fill-AA2{fill:#4A6FF3;} .d2-613552038 .fill-AA2{fill:#4A6FF3;}
.d2-878916677 .fill-AA4{fill:#EDF0FD;} .d2-613552038 .fill-AA4{fill:#EDF0FD;}
.d2-878916677 .fill-AA5{fill:#F7F8FE;} .d2-613552038 .fill-AA5{fill:#F7F8FE;}
.d2-878916677 .fill-AB4{fill:#EDF0FD;} .d2-613552038 .fill-AB4{fill:#EDF0FD;}
.d2-878916677 .fill-AB5{fill:#F7F8FE;} .d2-613552038 .fill-AB5{fill:#F7F8FE;}
.d2-878916677 .stroke-N1{stroke:#0A0F25;} .d2-613552038 .stroke-N1{stroke:#0A0F25;}
.d2-878916677 .stroke-N2{stroke:#676C7E;} .d2-613552038 .stroke-N2{stroke:#676C7E;}
.d2-878916677 .stroke-N3{stroke:#9499AB;} .d2-613552038 .stroke-N3{stroke:#9499AB;}
.d2-878916677 .stroke-N4{stroke:#CFD2DD;} .d2-613552038 .stroke-N4{stroke:#CFD2DD;}
.d2-878916677 .stroke-N5{stroke:#DEE1EB;} .d2-613552038 .stroke-N5{stroke:#DEE1EB;}
.d2-878916677 .stroke-N6{stroke:#EEF1F8;} .d2-613552038 .stroke-N6{stroke:#EEF1F8;}
.d2-878916677 .stroke-N7{stroke:#FFFFFF;} .d2-613552038 .stroke-N7{stroke:#FFFFFF;}
.d2-878916677 .stroke-B1{stroke:#0D32B2;} .d2-613552038 .stroke-B1{stroke:#0D32B2;}
.d2-878916677 .stroke-B2{stroke:#0D32B2;} .d2-613552038 .stroke-B2{stroke:#0D32B2;}
.d2-878916677 .stroke-B3{stroke:#E3E9FD;} .d2-613552038 .stroke-B3{stroke:#E3E9FD;}
.d2-878916677 .stroke-B4{stroke:#E3E9FD;} .d2-613552038 .stroke-B4{stroke:#E3E9FD;}
.d2-878916677 .stroke-B5{stroke:#EDF0FD;} .d2-613552038 .stroke-B5{stroke:#EDF0FD;}
.d2-878916677 .stroke-B6{stroke:#F7F8FE;} .d2-613552038 .stroke-B6{stroke:#F7F8FE;}
.d2-878916677 .stroke-AA2{stroke:#4A6FF3;} .d2-613552038 .stroke-AA2{stroke:#4A6FF3;}
.d2-878916677 .stroke-AA4{stroke:#EDF0FD;} .d2-613552038 .stroke-AA4{stroke:#EDF0FD;}
.d2-878916677 .stroke-AA5{stroke:#F7F8FE;} .d2-613552038 .stroke-AA5{stroke:#F7F8FE;}
.d2-878916677 .stroke-AB4{stroke:#EDF0FD;} .d2-613552038 .stroke-AB4{stroke:#EDF0FD;}
.d2-878916677 .stroke-AB5{stroke:#F7F8FE;} .d2-613552038 .stroke-AB5{stroke:#F7F8FE;}
.d2-878916677 .background-color-N1{background-color:#0A0F25;} .d2-613552038 .background-color-N1{background-color:#0A0F25;}
.d2-878916677 .background-color-N2{background-color:#676C7E;} .d2-613552038 .background-color-N2{background-color:#676C7E;}
.d2-878916677 .background-color-N3{background-color:#9499AB;} .d2-613552038 .background-color-N3{background-color:#9499AB;}
.d2-878916677 .background-color-N4{background-color:#CFD2DD;} .d2-613552038 .background-color-N4{background-color:#CFD2DD;}
.d2-878916677 .background-color-N5{background-color:#DEE1EB;} .d2-613552038 .background-color-N5{background-color:#DEE1EB;}
.d2-878916677 .background-color-N6{background-color:#EEF1F8;} .d2-613552038 .background-color-N6{background-color:#EEF1F8;}
.d2-878916677 .background-color-N7{background-color:#FFFFFF;} .d2-613552038 .background-color-N7{background-color:#FFFFFF;}
.d2-878916677 .background-color-B1{background-color:#0D32B2;} .d2-613552038 .background-color-B1{background-color:#0D32B2;}
.d2-878916677 .background-color-B2{background-color:#0D32B2;} .d2-613552038 .background-color-B2{background-color:#0D32B2;}
.d2-878916677 .background-color-B3{background-color:#E3E9FD;} .d2-613552038 .background-color-B3{background-color:#E3E9FD;}
.d2-878916677 .background-color-B4{background-color:#E3E9FD;} .d2-613552038 .background-color-B4{background-color:#E3E9FD;}
.d2-878916677 .background-color-B5{background-color:#EDF0FD;} .d2-613552038 .background-color-B5{background-color:#EDF0FD;}
.d2-878916677 .background-color-B6{background-color:#F7F8FE;} .d2-613552038 .background-color-B6{background-color:#F7F8FE;}
.d2-878916677 .background-color-AA2{background-color:#4A6FF3;} .d2-613552038 .background-color-AA2{background-color:#4A6FF3;}
.d2-878916677 .background-color-AA4{background-color:#EDF0FD;} .d2-613552038 .background-color-AA4{background-color:#EDF0FD;}
.d2-878916677 .background-color-AA5{background-color:#F7F8FE;} .d2-613552038 .background-color-AA5{background-color:#F7F8FE;}
.d2-878916677 .background-color-AB4{background-color:#EDF0FD;} .d2-613552038 .background-color-AB4{background-color:#EDF0FD;}
.d2-878916677 .background-color-AB5{background-color:#F7F8FE;} .d2-613552038 .background-color-AB5{background-color:#F7F8FE;}
.d2-878916677 .color-N1{color:#0A0F25;} .d2-613552038 .color-N1{color:#0A0F25;}
.d2-878916677 .color-N2{color:#676C7E;} .d2-613552038 .color-N2{color:#676C7E;}
.d2-878916677 .color-N3{color:#9499AB;} .d2-613552038 .color-N3{color:#9499AB;}
.d2-878916677 .color-N4{color:#CFD2DD;} .d2-613552038 .color-N4{color:#CFD2DD;}
.d2-878916677 .color-N5{color:#DEE1EB;} .d2-613552038 .color-N5{color:#DEE1EB;}
.d2-878916677 .color-N6{color:#EEF1F8;} .d2-613552038 .color-N6{color:#EEF1F8;}
.d2-878916677 .color-N7{color:#FFFFFF;} .d2-613552038 .color-N7{color:#FFFFFF;}
.d2-878916677 .color-B1{color:#0D32B2;} .d2-613552038 .color-B1{color:#0D32B2;}
.d2-878916677 .color-B2{color:#0D32B2;} .d2-613552038 .color-B2{color:#0D32B2;}
.d2-878916677 .color-B3{color:#E3E9FD;} .d2-613552038 .color-B3{color:#E3E9FD;}
.d2-878916677 .color-B4{color:#E3E9FD;} .d2-613552038 .color-B4{color:#E3E9FD;}
.d2-878916677 .color-B5{color:#EDF0FD;} .d2-613552038 .color-B5{color:#EDF0FD;}
.d2-878916677 .color-B6{color:#F7F8FE;} .d2-613552038 .color-B6{color:#F7F8FE;}
.d2-878916677 .color-AA2{color:#4A6FF3;} .d2-613552038 .color-AA2{color:#4A6FF3;}
.d2-878916677 .color-AA4{color:#EDF0FD;} .d2-613552038 .color-AA4{color:#EDF0FD;}
.d2-878916677 .color-AA5{color:#F7F8FE;} .d2-613552038 .color-AA5{color:#F7F8FE;}
.d2-878916677 .color-AB4{color:#EDF0FD;} .d2-613552038 .color-AB4{color:#EDF0FD;}
.d2-878916677 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="a"><g class="shape" ><rect x="12.000000" y="52.000000" width="117.000000" height="92.000000" class=" stroke-N1 fill-N7" style="stroke-width:2;" /><rect x="12.000000" y="52.000000" width="117.000000" height="92.000000" class="class_header fill-N1" /><text x="70.500000" y="105.750000" fill="red" class="text-mono" style="text-anchor:middle;font-size:24px;">a</text><line x1="12.000000" x2="129.000000" y1="144.000000" y2="144.000000" class=" stroke-N1" style="stroke-width:1" /></g></g><g id="(a -- )[0]"><path d="M 70.500000 146.000000 L 70.500000 213.000000" fill="none" class="connection stroke-B2" style="stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#d2-878916677)" /></g><mask id="d2-878916677" maskUnits="userSpaceOnUse" x="11" y="51" width="119" height="164"> .d2-613552038 .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);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="a"><g class="shape" ><rect x="12.000000" y="52.000000" width="117.000000" height="92.000000" class=" stroke-N1 fill-N7" style="stroke-width:2;" /><rect x="12.000000" y="52.000000" width="117.000000" height="92.000000" class="class_header fill-N1" /><text x="70.500000" y="105.750000" fill="red" class="text-mono" style="text-anchor:middle;font-size:24px;">a</text><line x1="12.000000" x2="129.000000" y1="144.000000" y2="144.000000" class=" stroke-N1" style="stroke-width:1" /></g></g><g id="(a -- )[0]"><path d="M 70.500000 146.000000 L 70.500000 213.000000" fill="none" class="connection stroke-B2" style="stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#d2-613552038)" /></g><mask id="d2-613552038" maskUnits="userSpaceOnUse" x="11" y="51" width="119" height="164">
<rect x="11" y="51" width="119" height="164" fill="white"></rect> <rect x="11" y="51" width="119" height="164" fill="white"></rect>
</mask></svg></svg> </mask></svg></svg>

Before

Width:  |  Height:  |  Size: 9.9 KiB

After

Width:  |  Height:  |  Size: 9.9 KiB

View file

@ -1075,10 +1075,8 @@
"id": "a.(k.t -> f.i)[0]", "id": "a.(k.t -> f.i)[0]",
"src": "a.k.t", "src": "a.k.t",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.f.i", "dst": "a.f.i",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1160,10 +1158,8 @@
"id": "(a.f.g -> s.n)[0]", "id": "(a.f.g -> s.n)[0]",
"src": "a.f.g", "src": "a.f.g",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "s.n", "dst": "s.n",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1245,10 +1241,8 @@
"id": "(k.s <-> u.o)[0]", "id": "(k.s <-> u.o)[0]",
"src": "k.s", "src": "k.s",
"srcArrow": "triangle", "srcArrow": "triangle",
"srcLabel": "",
"dst": "u.o", "dst": "u.o",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1330,10 +1324,8 @@
"id": "(h.m.s -> a.f.g)[0]", "id": "(h.m.s -> a.f.g)[0]",
"src": "h.m.s", "src": "h.m.s",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.f.g", "dst": "a.f.g",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1415,10 +1407,8 @@
"id": "(a.f.j -> u.s.j)[0]", "id": "(a.f.j -> u.s.j)[0]",
"src": "a.f.j", "src": "a.f.j",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "u.s.j", "dst": "u.s.j",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1500,10 +1490,8 @@
"id": "(u.c -> s.z.c)[0]", "id": "(u.c -> s.z.c)[0]",
"src": "u.c", "src": "u.c",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "s.z.c", "dst": "s.z.c",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1585,10 +1573,8 @@
"id": "(s.n -> y.r)[0]", "id": "(s.n -> y.r)[0]",
"src": "s.n", "src": "s.n",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "y.r", "dst": "y.r",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 8, "strokeWidth": 8,
@ -1658,10 +1644,8 @@
"id": "(y.r -> a.g.i)[0]", "id": "(y.r -> a.g.i)[0]",
"src": "y.r", "src": "y.r",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.g.i", "dst": "a.g.i",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View file

@ -1075,10 +1075,8 @@
"id": "a.(k.t -> f.i)[0]", "id": "a.(k.t -> f.i)[0]",
"src": "a.k.t", "src": "a.k.t",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.f.i", "dst": "a.f.i",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1123,10 +1121,8 @@
"id": "(a.f.g -> s.n)[0]", "id": "(a.f.g -> s.n)[0]",
"src": "a.f.g", "src": "a.f.g",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "s.n", "dst": "s.n",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1179,10 +1175,8 @@
"id": "(k.s <-> u.o)[0]", "id": "(k.s <-> u.o)[0]",
"src": "k.s", "src": "k.s",
"srcArrow": "triangle", "srcArrow": "triangle",
"srcLabel": "",
"dst": "u.o", "dst": "u.o",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1227,10 +1221,8 @@
"id": "(h.m.s -> a.f.g)[0]", "id": "(h.m.s -> a.f.g)[0]",
"src": "h.m.s", "src": "h.m.s",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.f.g", "dst": "a.f.g",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1275,10 +1267,8 @@
"id": "(a.f.j -> u.s.j)[0]", "id": "(a.f.j -> u.s.j)[0]",
"src": "a.f.j", "src": "a.f.j",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "u.s.j", "dst": "u.s.j",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1315,10 +1305,8 @@
"id": "(u.c -> s.z.c)[0]", "id": "(u.c -> s.z.c)[0]",
"src": "u.c", "src": "u.c",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "s.z.c", "dst": "s.z.c",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -1355,10 +1343,8 @@
"id": "(s.n -> y.r)[0]", "id": "(s.n -> y.r)[0]",
"src": "s.n", "src": "s.n",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "y.r", "dst": "y.r",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 8, "strokeWidth": 8,
@ -1395,10 +1381,8 @@
"id": "(y.r -> a.g.i)[0]", "id": "(y.r -> a.g.i)[0]",
"src": "y.r", "src": "y.r",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.g.i", "dst": "a.g.i",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View file

@ -255,10 +255,8 @@
"id": "a.(b -> c)[0]", "id": "a.(b -> c)[0]",
"src": "a.b", "src": "a.b",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.c", "dst": "a.c",
"dstArrow": "diamond", "dstArrow": "diamond",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -304,10 +302,8 @@
"id": "a.(1 -> c)[0]", "id": "a.(1 -> c)[0]",
"src": "a.1", "src": "a.1",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.c", "dst": "a.c",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -353,10 +349,8 @@
"id": "a.(2 <-> c)[0]", "id": "a.(2 <-> c)[0]",
"src": "a.2", "src": "a.2",
"srcArrow": "triangle", "srcArrow": "triangle",
"srcLabel": "",
"dst": "a.c", "dst": "a.c",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View file

@ -255,10 +255,8 @@
"id": "a.(b -> c)[0]", "id": "a.(b -> c)[0]",
"src": "a.b", "src": "a.b",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.c", "dst": "a.c",
"dstArrow": "diamond", "dstArrow": "diamond",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -295,10 +293,8 @@
"id": "a.(1 -> c)[0]", "id": "a.(1 -> c)[0]",
"src": "a.1", "src": "a.1",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "a.c", "dst": "a.c",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -335,10 +331,8 @@
"id": "a.(2 <-> c)[0]", "id": "a.(2 <-> c)[0]",
"src": "a.2", "src": "a.2",
"srcArrow": "triangle", "srcArrow": "triangle",
"srcLabel": "",
"dst": "a.c", "dst": "a.c",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View file

@ -255,10 +255,8 @@
"id": "build_workflow.(push -> GHA)[0]", "id": "build_workflow.(push -> GHA)[0]",
"src": "build_workflow.push", "src": "build_workflow.push",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "build_workflow.GHA", "dst": "build_workflow.GHA",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -304,10 +302,8 @@
"id": "build_workflow.(GHA -> S3)[0]", "id": "build_workflow.(GHA -> S3)[0]",
"src": "build_workflow.GHA", "src": "build_workflow.GHA",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "build_workflow.S3", "dst": "build_workflow.S3",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -353,10 +349,8 @@
"id": "build_workflow.(S3 <-> Terraform)[0]", "id": "build_workflow.(S3 <-> Terraform)[0]",
"src": "build_workflow.S3", "src": "build_workflow.S3",
"srcArrow": "triangle", "srcArrow": "triangle",
"srcLabel": "",
"dst": "build_workflow.Terraform", "dst": "build_workflow.Terraform",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -402,10 +396,8 @@
"id": "build_workflow.(Terraform -> AWS)[0]", "id": "build_workflow.(Terraform -> AWS)[0]",
"src": "build_workflow.Terraform", "src": "build_workflow.Terraform",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "build_workflow.AWS", "dst": "build_workflow.AWS",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View file

@ -255,10 +255,8 @@
"id": "build_workflow.(push -> GHA)[0]", "id": "build_workflow.(push -> GHA)[0]",
"src": "build_workflow.push", "src": "build_workflow.push",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "build_workflow.GHA", "dst": "build_workflow.GHA",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -295,10 +293,8 @@
"id": "build_workflow.(GHA -> S3)[0]", "id": "build_workflow.(GHA -> S3)[0]",
"src": "build_workflow.GHA", "src": "build_workflow.GHA",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "build_workflow.S3", "dst": "build_workflow.S3",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -335,10 +331,8 @@
"id": "build_workflow.(S3 <-> Terraform)[0]", "id": "build_workflow.(S3 <-> Terraform)[0]",
"src": "build_workflow.S3", "src": "build_workflow.S3",
"srcArrow": "triangle", "srcArrow": "triangle",
"srcLabel": "",
"dst": "build_workflow.Terraform", "dst": "build_workflow.Terraform",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -375,10 +369,8 @@
"id": "build_workflow.(Terraform -> AWS)[0]", "id": "build_workflow.(Terraform -> AWS)[0]",
"src": "build_workflow.Terraform", "src": "build_workflow.Terraform",
"srcArrow": "none", "srcArrow": "none",
"srcLabel": "",
"dst": "build_workflow.AWS", "dst": "build_workflow.AWS",
"dstArrow": "triangle", "dstArrow": "triangle",
"dstLabel": "",
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,

Some files were not shown because too many files have changed in this diff Show more