{
"cells": [
{
"cell_type": "markdown",
"source": [
"# Drawing wiring diagrams in Compose.jl\n",
"\n",
"\n",
"Catlab can draw wiring diagrams using the Julia package\n",
"[Compose.jl](https://github.com/GiovineItalia/Compose.jl).\n",
"\n",
"For best results, it is recommended to load the packages\n",
"[Convex.j](https://github.com/JuliaOpt/Convex.jl) and\n",
"[SCS.jl](https://github.com/JuliaOpt/SCS.jl). When available they are used to\n",
"optimize the layout of the outer ports."
],
"metadata": {}
},
{
"outputs": [],
"cell_type": "code",
"source": [
"using Catlab.WiringDiagrams, Catlab.Graphics\n",
"\n",
"import Convex, SCS"
],
"metadata": {},
"execution_count": 1
},
{
"cell_type": "markdown",
"source": [
"## Examples"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"### Symmetric monoidal category"
],
"metadata": {}
},
{
"outputs": [],
"cell_type": "code",
"source": [
"using Catlab.Theories\n",
"\n",
"A, B, C, D = Ob(FreeSymmetricMonoidalCategory, :A, :B, :C, :D)\n",
"f, g = Hom(:f, A, B), Hom(:g, B, A);"
],
"metadata": {},
"execution_count": 2
},
{
"cell_type": "markdown",
"source": [
"To start, here are a few very simple examples."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-3.0, -2.0, 6.0, 4.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, 0.0cy), (2.0cx, 0.0cy), (2.0cx, 0.0cy), (3.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, 0.0cy), (-2.0cx, 0.0cy), (-2.0cx, 0.0cy), (-1.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 24.0mm, 16.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 3
}
],
"cell_type": "code",
"source": [
"to_composejl(f)"
],
"metadata": {},
"execution_count": 3
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-5.0, -2.0, 10.0, 4.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, 0.0cy), (4.0cx, 0.0cy), (4.0cx, 0.0cy), (5.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, 0.0cy), (0.0cx, 0.0cy), (0.0cx, 0.0cy), (1.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.0cx, 0.0cy), (-4.0cx, 0.0cy), (-4.0cx, 0.0cy), (-3.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"g\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 40.0mm, 16.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 4
}
],
"cell_type": "code",
"source": [
"to_composejl(f⋅g)"
],
"metadata": {},
"execution_count": 4
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-3.0, -3.5, 6.0, 7.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, 1.5cy), (2.0cx, 1.5cy), (2.0cx, 1.5000001202679933cy), (3.0cx, 1.5000001202679933cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -1.5cy), (2.0cx, -1.5cy), (2.0cx, -1.5000001202679931cy), (3.0cx, -1.5000001202679931cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, 1.5000001202679933cy), (-2.0cx, 1.5000001202679933cy), (-2.0cx, 1.5cy), (-1.0cx, 1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -1.5000001202679931cy), (-2.0cx, -1.5000001202679931cy), (-2.0cx, -1.5cy), (-1.0cx, -1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, 0.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"g\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, -2.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 24.0mm, 28.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 5
}
],
"cell_type": "code",
"source": [
"to_composejl(f⊗g)"
],
"metadata": {},
"execution_count": 5
},
{
"cell_type": "markdown",
"source": [
"Here is a more complex example, involving generators with compound domains and\n",
"codomains."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-11.0, -6.5, 22.0, 13.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((9.0cx, 4.5cy), (10.0cx, 4.5cy), (10.0cx, 4.500010722369028cy), (11.0cx, 4.500010722369028cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((9.0cx, 1.5cy), (10.0cx, 1.5cy), (10.0cx, 1.5000034992546067cy), (11.0cx, 1.5000034992546067cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((9.0cx, -1.5cy), (10.0cx, -1.5cy), (10.0cx, -1.5000034992545952cy), (11.0cx, -1.5000034992545952cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((9.0cx, -4.5cy), (10.0cx, -4.5cy), (10.0cx, -4.500010722369007cy), (11.0cx, -4.500010722369007cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-7.0cx, -1.5cy), (-6.0cx, -1.5cy), (-6.0cx, -1.5cy), (-5.0cx, -1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-7.0cx, 1.5cy), (-6.0cx, 1.5cy), (-6.0cx, 1.5cy), (-5.0cx, 1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-7.0cx, -4.5cy), (-6.0cx, -4.5cy), (-6.0cx, -4.5cy), (-5.0cx, -4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-7.0cx, 4.5cy), (-6.0cx, 4.5cy), (-6.0cx, 4.5cy), (-5.0cx, 4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -1.5cy), (-2.0cx, -1.5cy), (-2.0cx, -1.5cy), (-1.0cx, -1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, 1.5cy), (-2.0cx, 1.5cy), (-2.0cx, 1.5cy), (-1.0cx, 1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -4.5cy), (-2.0cx, -4.5cy), (-2.0cx, -4.5cy), (-1.0cx, -4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, 4.5cy), (-2.0cx, 4.5cy), (-2.0cx, 4.5cy), (-1.0cx, 4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -1.5cy), (2.0cx, -1.5cy), (2.0cx, -1.5cy), (3.0cx, -1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, 1.5cy), (2.0cx, 1.5cy), (2.0cx, 1.5cy), (3.0cx, 1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -4.5cy), (2.0cx, -4.5cy), (2.0cx, -4.5cy), (3.0cx, -4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, 4.5cy), (2.0cx, 4.5cy), (2.0cx, 4.5cy), (3.0cx, 4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((5.0cx, -1.5cy), (6.0cx, -1.5cy), (6.0cx, -1.5cy), (7.0cx, -1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((5.0cx, 1.5cy), (6.0cx, 1.5cy), (6.0cx, 1.5cy), (7.0cx, 1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((5.0cx, -4.5cy), (6.0cx, -4.5cy), (6.0cx, -4.5cy), (7.0cx, -4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((5.0cx, 4.5cy), (6.0cx, 4.5cy), (6.0cx, 4.5cy), (7.0cx, 4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-11.0cx, 4.500010722369028cy), (-10.0cx, 4.500010722369028cy), (-10.0cx, 4.5cy), (-9.0cx, 4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-11.0cx, 1.5000034992546067cy), (-10.0cx, 1.5000034992546067cy), (-10.0cx, 1.5cy), (-9.0cx, 1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-11.0cx, -1.5000034992545952cy), (-10.0cx, -1.5000034992545952cy), (-10.0cx, -1.5cy), (-9.0cx, -1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-11.0cx, -4.500010722369007cy), (-10.0cx, -4.500010722369007cy), (-10.0cx, -4.5cy), (-9.0cx, -4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((7.0cx, 3.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"g\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((7.0cx, 0.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((7.0cx, -2.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"k\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((7.0cx, -5.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"h\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, 0.5cy), (2.0cx, 5.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"m\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, -5.5cy), (2.0cx, 5.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"n\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, -5.5cy), (2.0cx, 11.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"l\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.0cx, 0.5cy), (2.0cx, 5.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"n\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.0cx, -5.5cy), (2.0cx, 5.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"m\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-9.0cx, 3.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"k\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-9.0cx, 0.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"h\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-9.0cx, -2.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"g\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-9.0cx, -5.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 88.0mm, 52.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 6
}
],
"cell_type": "code",
"source": [
"h, k = Hom(:h, C, D), Hom(:k, D, C)\n",
"m, n = Hom(:m, B⊗A, A⊗B), Hom(:n, D⊗C, C⊗D)\n",
"q = Hom(:l, A⊗B⊗C⊗D, D⊗C⊗B⊗A)\n",
"\n",
"to_composejl((f⊗g⊗h⊗k)⋅(m⊗n)⋅q⋅(n⊗m)⋅(h⊗k⊗f⊗g))"
],
"metadata": {},
"execution_count": 6
},
{
"cell_type": "markdown",
"source": [
"Identities and braidings appear as wires."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-2.0, -2.0, 4.0, 4.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 0.0cy), (1.0cx, 0.0cy), (1.0cx, 0.0cy), (2.0cx, 0.0cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.0cx, 0.0cy), (-1.0cx, 0.0cy), (-1.0cx, 0.0cy), (0.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 16.0mm, 16.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 7
}
],
"cell_type": "code",
"source": [
"to_composejl(id(A))"
],
"metadata": {},
"execution_count": 7
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-2.0, -3.5, 4.0, 7.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 0.0cy), (0.8749999999792591cx, -0.8749999999792591cy), (1.0cx, -1.4999999999170368cy), (2.0cx, -1.4999999999170368cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.0cx, 1.499999999917038cy), (-1.0cx, 1.499999999917038cy), (-0.8749999999792594cx, 0.8749999999792594cy), (0.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 0.0cy), (0.8749999999792594cx, 0.8749999999792594cy), (1.0cx, 1.499999999917038cy), (2.0cx, 1.499999999917038cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.0cx, -1.4999999999170368cy), (-1.0cx, -1.4999999999170368cy), (-0.8749999999792591cx, -0.8749999999792591cy), (0.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 16.0mm, 28.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 8
}
],
"cell_type": "code",
"source": [
"to_composejl(braid(A,B))"
],
"metadata": {},
"execution_count": 8
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-5.0, -3.5, 10.0, 7.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, 0.0cy), (3.8749999999792593cx, 0.8749999999792594cy), (4.0cx, 1.499999999917038cy), (5.0cx, 1.499999999917038cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -1.5cy), (2.0cx, -1.5cy), (2.125cx, -0.8749999999999998cy), (3.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, 0.0cy), (3.8749999999792593cx, -0.8749999999792591cy), (4.0cx, -1.4999999999170368cy), (5.0cx, -1.4999999999170368cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, 1.5cy), (2.0cx, 1.5cy), (2.125cx, 0.8749999999999998cy), (3.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, 0.0cy), (-2.125cx, 0.8749999999999998cy), (-2.0cx, 1.5cy), (-1.0cx, 1.5cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.0cx, -1.4999999999170368cy), (-4.0cx, -1.4999999999170368cy), (-3.8749999999792593cx, -0.8749999999792591cy), (-3.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, 0.0cy), (-2.125cx, -0.8749999999999998cy), (-2.0cx, -1.5cy), (-1.0cx, -1.5cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.0cx, 1.499999999917038cy), (-4.0cx, 1.499999999917038cy), (-3.8749999999792593cx, 0.8749999999792594cy), (-3.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, 0.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, -2.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"g\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 40.0mm, 28.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 9
}
],
"cell_type": "code",
"source": [
"to_composejl(braid(A,B) ⋅ (g⊗f) ⋅ braid(A,B))"
],
"metadata": {},
"execution_count": 9
},
{
"cell_type": "markdown",
"source": [
"The isomorphism $A \\otimes B \\otimes C \\to C \\otimes B \\otimes A$ induced by\n",
"the permutation $(3\\ 2\\ 1)$ is a composite of braidings and identities."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-4.0, -5.0, 8.0, 10.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.0cx, 3.0cy), (3.0cx, 3.0cy), (3.0cx, 3.0000000046147646cy), (4.0cx, 3.0000000046147646cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 1.5cy), (0.8749999999999998cx, 2.375cy), (1.0cx, 3.0cy), (2.0cx, 3.0cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.0cx, -1.5cy), (-0.7500000000000002cx, -0.2500000000000002cy), (-1.2499999999999998cx, 0.2500000000000002cy), (0.0cx, 1.5cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-4.0cx, -2.999999998411227cy), (-3.0cx, -2.999999998411227cy), (-2.8749999996028066cx, -2.3749999996028066cy), (-2.0cx, -1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.0cx, -1.5cy), (2.8749999996028066cx, -2.3749999996028066cy), (3.0cx, -2.999999998411227cy), (4.0cx, -2.999999998411227cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 1.5cy), (1.2499999999999998cx, 0.2500000000000002cy), (0.7500000000000002cx, -0.2500000000000002cy), (2.0cx, -1.5cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.0cx, 3.0cy), (-1.0cx, 3.0cy), (-0.8749999999999998cx, 2.375cy), (0.0cx, 1.5cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-4.0cx, 3.0000000046147646cy), (-3.0cx, 3.0000000046147646cy), (-3.0cx, 3.0cy), (-2.0cx, 3.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.0cx, -1.5cy), (2.8750000011709522cx, -0.6249999988290476cy), (3.0cx, 4.683810041927053e-9cy), (4.0cx, 4.683810041927053e-9cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, -3.0cy), (1.0cx, -3.0cy), (1.1250000000000002cx, -2.375cy), (2.0cx, -1.5cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.0cx, -1.5cy), (-1.1250000000000002cx, -2.375cy), (-1.0cx, -3.0cy), (0.0cx, -3.0cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-4.0cx, 4.683810041927053e-9cy), (-3.0cx, 4.683810041927053e-9cy), (-2.8750000011709522cx, -0.6249999988290476cy), (-2.0cx, -1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 32.0mm, 40.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 10
}
],
"cell_type": "code",
"source": [
"σ = (braid(A,B) ⊗ id(C)) ⋅ (id(B) ⊗ braid(A,C) ⋅ (braid(B,C) ⊗ id(A)))\n",
"\n",
"to_composejl(σ)"
],
"metadata": {},
"execution_count": 10
},
{
"cell_type": "markdown",
"source": [
"By default, anchor points are added along identity and braiding wires to\n",
"reproduce the expression structure in the layout. The anchors can be disabled\n",
"to get a more \"unbiased\" layout."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-4.0, -5.0, 8.0, 10.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-4.0cx, -3.00000000031698cy), (0.0cx, -3.00000000031698cy), (0.0cx, 3.0000000003169776cy), (4.0cx, 3.0000000003169776cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-4.0cx, 3.0000000003169776cy), (0.0cx, 3.0000000003169776cy), (0.0cx, -3.00000000031698cy), (4.0cx, -3.00000000031698cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-4.0cx, 1.959477577513413e-15cy), (0.0cx, 1.959477577513413e-15cy), (0.0cx, 1.959477577513413e-15cy), (4.0cx, 1.959477577513413e-15cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 32.0mm, 40.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 11
}
],
"cell_type": "code",
"source": [
"to_composejl(σ, anchor_wires=false)"
],
"metadata": {},
"execution_count": 11
},
{
"cell_type": "markdown",
"source": [
"### Biproduct category"
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-2.25, -3.5, 4.5, 7.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.21650635094610968cx, 0.12499999999999999cy), (1.2767627019191108cx, 0.7371392896442724cy), (1.233253175473055cx, 1.5000000001242069cy), (2.25cx, 1.5000000001242069cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.21650635094610968cx, -0.12499999999999999cy), (1.2767627019191106cx, -0.7371392896442723cy), (1.233253175473055cx, -1.5000000001242062cy), (2.25cx, -1.5000000001242062cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.25cx, -2.2076843836767246e-17cy), (-1.25cx, -2.2076843836767246e-17cy), (-1.25cx, -1.5308084989341916e-16cy), (-0.25cx, -3.061616997868383e-17cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-0.25cx, -0.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 18.0mm, 28.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 12
}
],
"cell_type": "code",
"source": [
"A, B, C = Ob(FreeBiproductCategory, :A, :B, :C)\n",
"f = Hom(:f, A, B)\n",
"\n",
"to_composejl(mcopy(A))"
],
"metadata": {},
"execution_count": 12
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-2.25, -2.0, 4.5, 4.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.25cx, -1.146121000696354e-16cy), (-1.25cx, -1.146121000696354e-16cy), (-1.25cx, -1.5308084989341916e-16cy), (-0.25cx, -3.061616997868383e-17cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-0.25cx, -0.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 18.0mm, 16.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 13
}
],
"cell_type": "code",
"source": [
"to_composejl(delete(A))"
],
"metadata": {},
"execution_count": 13
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-5.5, -3.5, 11.0, 7.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.5cx, 0.0cy), (4.5cx, 0.0cy), (4.5cx, 0.0cy), (5.5cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.03349364905389cx, -0.12499999999999999cy), (-1.9732372981077804cx, -0.7371392896287466cy), (-2.016746824526945cx, -1.5cy), (-1.0cx, -1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.03349364905389cx, 0.12499999999999999cy), (-1.9732372981077804cx, 0.7371392896287466cy), (-2.016746824526945cx, 1.5cy), (-1.0cx, 1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -1.5cy), (2.016746824526945cx, -1.5cy), (1.9732372981077804cx, -0.7371392896287466cy), (3.03349364905389cx, -0.12499999999999999cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, 1.5cy), (2.016746824526945cx, 1.5cy), (1.9732372981077804cx, 0.7371392896287463cy), (3.03349364905389cx, 0.12499999999999993cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.5cx, -2.2076843836767246e-17cy), (-4.5cx, -2.2076843836767246e-17cy), (-4.5cx, -1.5308084989341916e-16cy), (-3.5cx, -3.061616997868383e-17cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, -0.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, 0.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, -2.5cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.5cx, -0.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 44.0mm, 28.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 14
}
],
"cell_type": "code",
"source": [
"to_composejl(mcopy(A)⋅(f⊗f)⋅mmerge(B))"
],
"metadata": {},
"execution_count": 14
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-6.5, -3.25, 13.0, 6.5, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.875cx, -0.7834936490538904cy), (-1.4548480089247242cx, 1.6762817539585895cy), (1.4999999964344741cx, 1.2332531754730547cy), (1.4999999964344741cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.875cx, -0.7834936490538903cy), (1.4548480089247262cx, 1.676281753958588cy), (-1.4999999964344686cx, 1.2332531754730547cy), (-1.4999999964344686cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.125cx, -0.7834936490538903cy), (-4.17015199154649cx, 1.0267627019364296cy), (-4.5000000002041975cx, 1.2332531754730547cy), (-4.5000000002041975cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.125cx, -0.7834936490538904cy), (4.170151991546492cx, 1.0267627019364303cy), (4.500000000204201cx, 1.2332531754730547cy), (4.500000000204201cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.9999999999196656cx, -3.25cy), (2.9999999999196656cx, -2.25cy), (3.0cx, -2.25cy), (3.0cx, -1.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.9999999999196647cx, -3.25cy), (-2.9999999999196647cx, -2.25cy), (-3.0cx, -2.25cy), (-3.0cx, -1.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.75cx, -1.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.25cx, -1.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 52.0mm, 26.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 15
}
],
"cell_type": "code",
"source": [
"to_composejl(mcopy(A⊗B), orientation=TopToBottom)"
],
"metadata": {},
"execution_count": 15
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-9.5, -3.25, 19.0, 6.5, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-0.12499999999999994cx, -0.7834936490538903cy), (-1.5451519914812195cx, 1.6762817546617068cy), (-4.499999999682034cx, 1.2332531754730547cy), (-4.499999999682034cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((6.125cx, -0.7834936490538904cy), (7.1701519908482565cx, 1.0267627007270521cy), (7.499999994618324cx, 1.2332531754730547cy), (7.499999994618324cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.875cx, -0.7834936490538904cy), (-4.07984800816627cx, 2.3258008081106007cy), (1.5000000025021132cx, 1.2332531754730547cy), (1.5000000025021132cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.12500000000000003cx, -0.7834936490538904cy), (1.545151991481221cx, 1.6762817546617075cy), (4.499999999682037cx, 1.2332531754730547cy), (4.499999999682037cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-6.125cx, -0.7834936490538903cy), (-7.170151990848256cx, 1.0267627007270521cy), (-7.499999994618322cx, 1.2332531754730547cy), (-7.499999994618322cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((5.875cx, -0.7834936490538903cy), (4.079848008166272cx, 2.325800808110598cy), (-1.5000000025021007cx, 1.2332531754730547cy), (-1.5000000025021007cx, 3.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((6.000000214825618cx, -3.25cy), (6.000000214825618cx, -2.25cy), (6.0cx, -2.25cy), (6.0cx, -1.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.7730465568821506e-16cx, -3.25cy), (-2.7730465568821506e-16cx, -2.25cy), (7.654042494670958e-17cx, -2.25cy), (1.5308084989341915e-17cx, -1.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-6.000000214825616cx, -3.25cy), (-6.000000214825616cx, -2.25cy), (-6.0cx, -2.25cy), (-6.0cx, -1.25cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((5.75cx, -1.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-0.25cx, -1.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-6.25cx, -1.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 76.0mm, 26.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 16
}
],
"cell_type": "code",
"source": [
"to_composejl(mcopy(A⊗B⊗C), orientation=TopToBottom)"
],
"metadata": {},
"execution_count": 16
},
{
"cell_type": "markdown",
"source": [
"### Compact closed category"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"The unit and co-unit of a compact closed category appear as caps and cups."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-2.0, -3.5, 4.0, 7.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 0.0cy), (4.592425496548577e-17cx, 0.7499999999585191cy), (1.0cx, 1.499999999917038cy), (2.0cx, 1.499999999917038cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 0.0cy), (4.592425496548574e-17cx, -0.7499999999585185cy), (1.0cx, -1.4999999999170368cy), (2.0cx, -1.4999999999170368cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 0.0cy), (0.0cx, 0.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 16.0mm, 28.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 17
}
],
"cell_type": "code",
"source": [
"A, B = Ob(FreeCompactClosedCategory, :A, :B)\n",
"\n",
"to_composejl(dunit(A))"
],
"metadata": {},
"execution_count": 17
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-2.0, -3.5, 4.0, 7.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.0cx, 1.499999999917038cy), (-1.0cx, 1.499999999917038cy), (-1.3777276489645734e-16cx, 0.7499999999585192cy), (0.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.0cx, -1.4999999999170368cy), (-1.0cx, -1.4999999999170368cy), (4.592425496548572e-17cx, -0.7499999999585183cy), (0.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 0.0cy), (0.0cx, 0.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 16.0mm, 28.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 18
}
],
"cell_type": "code",
"source": [
"to_composejl(dcounit(A))"
],
"metadata": {},
"execution_count": 18
},
{
"cell_type": "markdown",
"source": [
"In a self-dual compact closed category, such as a bicategory of relations,\n",
"every morphism $f: A \\to B$ has a transpose $f^\\dagger: B \\to A$ given by\n",
"bending wires:"
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-5.0, -5.0, 10.0, 10.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, -3.0cy), (4.0cx, -3.0cy), (4.0cx, -2.9999999937396953cy), (5.0cx, -2.9999999937396953cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, -3.0cy), (1.5cx, -3.0cy), (1.5cx, -3.0cy), (3.0cx, -3.0cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -1.5cy), (-3.0cx, -2.25cy), (-1.5cx, -3.0cy), (0.0cx, -3.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, 0.0cy), (2.0cx, 0.0cy), (3.0cx, 0.7500000000000001cy), (3.0cx, 1.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -1.5cy), (-3.0cx, -0.7499999999999999cy), (-2.0cx, 0.0cy), (-1.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 3.0cy), (1.5cx, 3.0cy), (3.0cx, 2.25cy), (3.0cx, 1.5cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, 3.0cy), (-1.5cx, 3.0cy), (-1.5cx, 3.0cy), (0.0cx, 3.0cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.0cx, 2.9999999937391766cy), (-4.0cx, 2.9999999937391766cy), (-4.0cx, 3.0cy), (-3.0cx, 3.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, 1.5cy), (0.0cx, 0.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -1.5cy), (0.0cx, 0.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 40.0mm, 40.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 19
}
],
"cell_type": "code",
"source": [
"A, B = Ob(FreeBicategoryRelations, :A, :B)\n",
"f = Hom(:f, A, B)\n",
"\n",
"to_composejl((dunit(A) ⊗ id(B)) ⋅ (id(A) ⊗ f ⊗ id(B)) ⋅ (id(A) ⊗ dcounit(B)))"
],
"metadata": {},
"execution_count": 19
},
{
"cell_type": "markdown",
"source": [
"### Abelian bicategory of relations"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"In an abelian bicategory of relations, such as the category of linear\n",
"relations, the duplication morphisms $\\Delta_X: X \\to X \\oplus X$ and addition\n",
"morphisms $\\blacktriangledown_X: X \\oplus X \\to X$ belong to a bimonoid. Among\n",
"other things, this means that the following two morphisms are equal."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-3.5, -3.5, 7.0, 7.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.4665063509461096cx, 0.12499999999999999cy), (2.526762701919111cx, 0.7371392896442726cy), (2.4832531754730547cx, 1.5000000001242069cy), (3.5cx, 1.5000000001242069cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.4665063509461096cx, -0.12499999999999999cy), (2.526762701919111cx, -0.7371392896442724cy), (2.4832531754730547cx, -1.5000000001242062cy), (3.5cx, -1.5000000001242062cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, 0.0cy), (0.0cx, 0.0cy), (0.0cx, -1.5308084989341916e-16cy), (1.0cx, -3.061616997868383e-17cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.5cx, 1.500000000124495cy), (-2.483253175473055cx, 1.500000000124495cy), (-2.5267627019191736cx, 0.7371392896443082cy), (-1.4665063509461098cx, 0.12499999999999993cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.5cx, -1.5000000001244949cy), (-2.4832531754730547cx, -1.5000000001244949cy), (-2.526762701919173cx, -0.7371392896443085cy), (-1.4665063509461096cx, -0.12499999999999999cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -0.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.5cx, -0.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 28.0mm, 28.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 20
}
],
"cell_type": "code",
"source": [
"X = Ob(FreeAbelianBicategoryRelations, :X)\n",
"\n",
"to_composejl(plus(X) ⋅ mcopy(X))"
],
"metadata": {},
"execution_count": 20
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-4.5, -6.5, 9.0, 13.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.5cx, 3.0cy), (3.5cx, 3.0cy), (3.5cx, 2.9999999999196656cy), (4.5cx, 2.9999999999196656cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.5cx, -3.0cy), (3.5cx, -3.0cy), (3.5cx, -2.9999999999196647cy), (4.5cx, -2.9999999999196647cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.03349364905389cx, 2.875cy), (0.736538105676658cx, 1.275721420742507cy), (-0.736538105676658cx, -1.2757214207425078cy), (2.03349364905389cx, -2.875cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.03349364905389cx, -2.875cy), (0.736538105676658cx, -1.275721420742507cy), (-0.736538105676658cx, 1.275721420742507cy), (2.03349364905389cx, 2.875cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, -4.5cy), (1.016746824526945cx, -4.5cy), (0.9732372981077804cx, -3.7371392896287468cy), (2.03349364905389cx, -3.125cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.03349364905389cx, -3.125cy), (-0.9732372981077804cx, -3.7371392896287468cy), (-1.016746824526945cx, -4.5cy), (0.0cx, -4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((0.0cx, 4.5cy), (1.016746824526945cx, 4.5cy), (0.9732372981077804cx, 3.7371392896287463cy), (2.03349364905389cx, 3.125cy))], Symbol(\"\")), Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.03349364905389cx, 3.125cy), (-0.9732372981077804cx, 3.7371392896287468cy), (-1.016746824526945cx, 4.5cy), (0.0cx, 4.5cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-4.5cx, 2.9999999999196656cy), (-3.5cx, 2.9999999999196656cy), (-3.5cx, 3.0cy), (-2.5cx, 3.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-4.5cx, -2.9999999999196647cy), (-3.5cx, -2.9999999999196647cy), (-3.5cx, -3.0cy), (-2.5cx, -3.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.0cx, 2.75cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((2.0cx, -3.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.5cx, 2.75cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-2.5cx, -3.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 36.0mm, 52.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 21
}
],
"cell_type": "code",
"source": [
"to_composejl((mcopy(X)⊕mcopy(X)) ⋅ (id(X)⊕swap(X,X)⊕id(X)) ⋅ (plus(X)⊕plus(X)))"
],
"metadata": {},
"execution_count": 21
},
{
"cell_type": "markdown",
"source": [
"## Custom styles"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"The visual appearance of wiring diagrams can be customized by passing Compose\n",
"[properties](http://giovineitalia.github.io/Compose.jl/latest/gallery/properties/)."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-5.0, -2.0, 10.0, 4.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, 0.0cy), (4.0cx, 0.0cy), (4.0cx, 0.0cy), (5.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, 0.0cy), (0.0cx, 0.0cy), (0.0cx, 0.0cy), (1.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.0cx, 0.0cy), (-4.0cx, 0.0cy), (-4.0cx, 0.0cy), (-3.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"g\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))]), Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.9019607843137255,0.9019607843137255,0.9803921568627451,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))]), Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.9019607843137255,0.9019607843137255,0.9803921568627451,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 40.0mm, 16.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 22
}
],
"cell_type": "code",
"source": [
"using Compose: fill, stroke\n",
"\n",
"A, B, = Ob(FreeSymmetricMonoidalCategory, :A, :B)\n",
"f, g = Hom(:f, A, B), Hom(:g, B, A)\n",
"\n",
"to_composejl(f⋅g, props=Dict(\n",
" :box => [fill(\"lavender\"), stroke(\"black\")],\n",
"))"
],
"metadata": {},
"execution_count": 22
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-3.5, -3.5, 7.0, 7.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.4665063509461096cx, 0.12499999999999999cy), (2.526762701919111cx, 0.7371392896442726cy), (2.4832531754730547cx, 1.5000000001242069cy), (3.5cx, 1.5000000001242069cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.4665063509461096cx, -0.12499999999999999cy), (2.526762701919111cx, -0.7371392896442724cy), (2.4832531754730547cx, -1.5000000001242062cy), (3.5cx, -1.5000000001242062cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, 0.0cy), (0.0cx, 0.0cy), (0.0cx, -1.5308084989341916e-16cy), (1.0cx, -3.061616997868383e-17cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.5cx, 1.500000000124495cy), (-2.483253175473055cx, 1.500000000124495cy), (-2.5267627019191736cx, 0.7371392896443082cy), (-1.4665063509461098cx, 0.12499999999999993cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.5cx, -1.5000000001244949cy), (-2.4832531754730547cx, -1.5000000001244949cy), (-2.526762701919173cx, -0.7371392896443085cy), (-1.4665063509461096cx, -0.12499999999999999cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -0.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))]), Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(1.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.5cx, -0.25cy), (0.5cx, 0.5cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))]), Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,1.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 28.0mm, 28.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 23
}
],
"cell_type": "code",
"source": [
"X = Ob(FreeAbelianBicategoryRelations, :X)\n",
"\n",
"to_composejl(plus(X) ⋅ mcopy(X), props=Dict(\n",
" :junction => [fill(\"red\"), stroke(\"black\")],\n",
" :variant_junction => [fill(\"blue\"), stroke(\"black\")],\n",
"))"
],
"metadata": {},
"execution_count": 23
},
{
"cell_type": "markdown",
"source": [
"The background color can also be changed."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}((0.0w, 0.0h), 1.0w, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.8274509803921568,0.8274509803921568,0.8274509803921568,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-5.0, -2.0, 10.0, 4.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, 0.0cy), (4.0cx, 0.0cy), (4.0cx, 0.0cy), (5.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, 0.0cy), (0.0cx, 0.0cy), (0.0cx, 0.0cy), (1.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.0cx, 0.0cy), (-4.0cx, 0.0cy), (-4.0cx, 0.0cy), (-3.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"g\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))]), Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(1.0,1.0,1.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, false)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, false)], Symbol(\"\")), Compose.Form{Compose.LinePrimitive}(Compose.LinePrimitive[Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 0.0h), (1.0w + -1.0mm, 0.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(0.0w, 1.0mm), (0.0w, 1.0h + -1.0mm)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0mm, 1.0h), (1.0w + -1.0mm, 1.0h)]), Compose.LinePrimitive{Tuple{Measures.Measure, Measures.Measure}}(Tuple{Measures.Measure, Measures.Measure}[(1.0w, 1.0mm), (1.0w, 1.0h + -1.0mm)])], Symbol(\"\"))]), List([]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0h + -1.0mm), 1.0mm, 0.0, 1.5707963267948966, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}}, Measures.AbsoluteLength}((1.0mm, 1.0h + -1.0mm), 1.0mm, 1.5707963267948966, 3.141592653589793, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0w + -1.0mm, 1.0mm), 1.0mm, 4.71238898038469, 0.0, true)], Symbol(\"\")), Compose.Form{Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}}(Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}[Compose.ArcPrimitive{Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}, Measures.AbsoluteLength}((1.0mm, 1.0mm), 1.0mm, 3.141592653589793, 4.71238898038469, true)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}}(Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}[Compose.RectanglePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.Length{:w, Float64}, Measures.Add{Measures.Add{Measures.Length{:h, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}}((0.0w, 0.7354497354497354mm), 1.0w, 1.0h + -2.0mm + 0.5291005291005292mm)], Symbol(\"\")), Compose.Form{Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}}(Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}[Compose.RectanglePrimitive{Tuple{Measures.AbsoluteLength, Measures.Length{:h, Float64}}, Measures.Add{Measures.Add{Measures.Length{:w, Float64}, Measures.AbsoluteLength}, Measures.AbsoluteLength}, Measures.Length{:h, Float64}}((0.7354497354497354mm, 0.0h), 1.0w + -2.0mm + 0.5291005291005292mm, 1.0h)], Symbol(\"\"))]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))]), Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(1.0,1.0,1.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), 40.0mm, 16.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 24
}
],
"cell_type": "code",
"source": [
"to_composejl(f⋅g, background_color=\"lightgray\", props=Dict(\n",
" :box => [fill(\"white\"), stroke(\"black\")],\n",
"))"
],
"metadata": {},
"execution_count": 24
},
{
"cell_type": "markdown",
"source": [
"By default, the boxes are rectangular (`:rectangle`). Other available shapes\n",
"include circles (`:circle`) and ellipses (`:ellipse`)."
],
"metadata": {}
},
{
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": "ComposePicture(Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), Compose.UnitBox{Float64, Float64, Float64, Float64}(-5.0, -2.0, 10.0, 4.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((3.0cx, 0.0cy), (4.0cx, 0.0cy), (4.0cx, 0.0cy), (5.0cx, 0.0cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-1.0cx, 0.0cy), (0.0cx, 0.0cy), (0.0cx, -2.4492935982947064e-16cy), (1.0cx, -1.2246467991473532e-16cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}}(Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}[Compose.CurvePrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-5.0cx, -1.709757065478875e-16cy), (-4.0cx, -1.709757065478875e-16cy), (-4.0cx, -2.4492935982947064e-16cy), (-3.0cx, -1.2246467991473532e-16cy))], Symbol(\"\"))]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 0, false, false, false, false, nothing, nothing, 0.0, :wire)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :wires), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((1.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"g\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}}((-3.0cx, -1.0cy), (2.0cx, 2.0cy)), Compose.UnitBox{Float64, Float64, Float64, Float64}(0.0, 0.0, 1.0, 1.0, 0.0mm, 0.0mm, 0.0mm, 0.0mm), nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}}(Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}[Compose.TextPrimitive{Tuple{Measures.Length{:cx, Float64}, Measures.Length{:cy, Float64}}, Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}, Tuple{Measures.AbsoluteLength, Measures.AbsoluteLength}}((0.5cx, 0.5cy), \"f\", Compose.HCenter(), Compose.VCenter(), Compose.Rotation{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}(0.0, (0.5w, 0.5h)), (0.0mm, 0.0mm))], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 2, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\")), Compose.Context(Measures.BoundingBox{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}}((0.0w, 0.0h), (1.0w, 1.0h)), nothing, nothing, nothing, nothing, List([]), List([Compose.Form{Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}}(Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}[Compose.CirclePrimitive{Tuple{Measures.Length{:w, Float64}, Measures.Length{:h, Float64}}, Measures.Length{:w, Float64}}((0.5w, 0.5h), 0.5w)], Symbol(\"\"))]), List([Compose.Property{Compose.FillPrimitive}(Compose.FillPrimitive[Compose.FillPrimitive(RGBA{Float64}(0.0,0.0,0.0,0.0))]), Compose.Property{Compose.StrokePrimitive}(Compose.StrokePrimitive[Compose.StrokePrimitive(RGBA{Float64}(0.0,0.0,0.0,1.0))])]), 1, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, Symbol(\"\"))]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :box)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :boxes)]), List([]), List([]), 0, false, false, false, false, nothing, nothing, 0.0, :diagram), 40.0mm, 16.0mm)",
"text/html": [
"\n",
"\n"
],
"image/svg+xml": [
"\n",
"\n"
]
},
"metadata": {},
"execution_count": 25
}
],
"cell_type": "code",
"source": [
"to_composejl(f⋅g, default_box_shape=:circle)"
],
"metadata": {},
"execution_count": 25
},
{
"cell_type": "markdown",
"source": [
"## Output formats"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"The function `to_composejl` returns a `ComposePicture` object, which contains\n",
"a Compose.jl context as well as a recommended width and height. When displayed\n",
"interactively, this object is rendered using Compose's SVG backend."
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Any backend can be used by calling Compose's `draw` function. The SVG and\n",
"[PGF](https://ctan.org/pkg/pgf) (LaTeX) backends are always available. To use\n",
"the PNG or PDF backends, the extra packages\n",
"[Cairo.jl](https://github.com/JuliaGraphics/Cairo.jl) and\n",
"[Fontconfig.jl](https://github.com/JuliaGraphics/Fontconfig.jl) must be\n",
"installed."
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"For example, here is how to use the PGF backend."
],
"metadata": {}
},
{
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\\begin{tikzpicture}[x=1mm,y=-1mm]\n",
"\\definecolor{mycolor000000}{rgb}{0,0,0}\n",
"\\begin{scope}\n",
"\\path [fill=mycolor000000,draw=mycolor000000] (32,8) .. controls (36,8) and (36,8) .. (40,8);\n",
"\\end{scope}\n",
"\\begin{scope}\n",
"\\path [fill=mycolor000000,draw=mycolor000000] (16,8) .. controls (20,8) and (20,8) .. (24,8);\n",
"\\end{scope}\n",
"\\begin{scope}\n",
"\\path [fill=mycolor000000,draw=mycolor000000] (0,8) .. controls (4,8) and (4,8) .. (8,8);\n",
"\\end{scope}\n",
"\\begin{scope}\n",
"\\path [fill=mycolor000000,fill opacity=0,draw=mycolor000000] (24,4) rectangle +(8,8);\n",
"\\end{scope}\n",
"\\begin{scope}\n",
"\\draw (28,8) node [text=mycolor000000,rotate around={-0: (0,0)},inner sep=0.0]{\\fontsize{12mm}{14.4mm}\\selectfont $\\text{g}$};\n",
"\\end{scope}\n",
"\\begin{scope}\n",
"\\path [fill=mycolor000000,fill opacity=0,draw=mycolor000000] (8,4) rectangle +(8,8);\n",
"\\end{scope}\n",
"\\begin{scope}\n",
"\\draw (12,8) node [text=mycolor000000,rotate around={-0: (0,0)},inner sep=0.0]{\\fontsize{12mm}{14.4mm}\\selectfont $\\text{f}$};\n",
"\\end{scope}\n",
"\\end{tikzpicture}\n",
"\n"
]
}
],
"cell_type": "code",
"source": [
"using Compose: draw, PGF\n",
"\n",
"pic = to_composejl(f⋅g, rounded_boxes=false)\n",
"pgf = sprint() do io\n",
" pgf_backend = PGF(io, pic.width, pic.height,\n",
" false, # emit_on_finish\n",
" true, # only_tikz\n",
" texfonts=true)\n",
" draw(pgf_backend, pic.context)\n",
"end\n",
"println(pgf)"
],
"metadata": {},
"execution_count": 26
}
],
"nbformat_minor": 3,
"metadata": {
"language_info": {
"file_extension": ".jl",
"mimetype": "application/julia",
"name": "julia",
"version": "1.7.0"
},
"kernelspec": {
"name": "julia-1.7",
"display_name": "Julia 1.7.0",
"language": "julia"
}
},
"nbformat": 4
}