<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<ndbx formatVersion="0.9" type="file">
    <var name="canvasBackground" value="#ffffffff"/>
    <node name="geonet1" prototype="corevector.geonet" rendered="true" x="70" y="40">
        <param name="color1" type="color">
            <value>#ff9800ff</value>
        </param>
        <param name="color2" type="color">
            <value>#7e8aa2ff</value>
        </param>
        <param name="color3" type="color">
            <value>#263248ff</value>
        </param>
        <param name="color4" type="color">
            <value>#ff9800ff</value>
        </param>
        <param name="rotation1" type="float" widget="angle">
            <value>96.0</value>
        </param>
        <param name="rotation2" type="float" widget="angle">
            <value>-8.0</value>
        </param>
        <param name="rotation3" type="float" widget="angle">
            <value>-29.0</value>
        </param>
        <param name="rotation4" type="float" widget="angle">
            <value>98.0</value>
        </param>
        <param label="Snapsize" min="1.0" name="gridsize" type="float">
            <value>55.0</value>
        </param>
        <param label="SnapOffsetX" name="gridX" type="float">
            <value>-4.0</value>
        </param>
        <param label="SnapOffsetY" name="gridY" type="float">
            <value>-31.0</value>
        </param>
        <param name="scale1" type="float">
            <value>378.0</value>
        </param>
        <param name="scale2" type="float">
            <value>301.0</value>
        </param>
        <param name="scale3" type="float">
            <value>400.0</value>
        </param>
        <param name="scale4" type="float">
            <value>450.0</value>
        </param>
        <param min="1.0" name="baseGridSize" type="float">
            <value>451.0</value>
        </param>
        <param min="1.0" name="baseEllipseSize" type="float">
            <value>69.0</value>
        </param>
        <param min="1.0" name="baseGridRows" type="int">
            <value>8</value>
        </param>
        <node name="transform1" prototype="corevector.transform" x="150" y="40">
            <param name="r">
                <expression>parent.rotation1</expression>
            </param>
            <param name="sx">
                <expression>parent.scale1</expression>
            </param>
            <param name="sy">
                <expression>parent.scale1</expression>
            </param>
        </node>
        <node name="transform2" prototype="corevector.transform" x="150" y="120">
            <param name="r">
                <expression>parent.rotation2</expression>
            </param>
            <param name="sx">
                <expression>parent.scale2</expression>
            </param>
            <param name="sy">
                <expression>parent.scale2</expression>
            </param>
        </node>
        <node name="color3" prototype="corevector.color" x="230" y="200">
            <param name="fill">
                <expression>parent.color3</expression>
            </param>
        </node>
        <node name="color4" prototype="corevector.color" x="230" y="280">
            <param name="fill">
                <expression>parent.color4</expression>
            </param>
        </node>
        <node name="transform3" prototype="corevector.transform" x="150" y="200">
            <param name="r">
                <expression>parent.rotation3</expression>
            </param>
            <param name="sx">
                <expression>parent.scale3</expression>
            </param>
            <param name="sy">
                <expression>parent.scale3</expression>
            </param>
        </node>
        <node name="geonet2" prototype="corevector.geonet" x="60" y="40">
            <param min="1.0" name="gridRows" type="int">
                <expression>parent.baseGridRows</expression>
            </param>
            <param min="1.0" name="gridSize" type="float">
                <expression>parent.baseGridSize</expression>
            </param>
            <param min="1.0" name="ellipseSize" type="float">
                <expression>parent.baseEllipseSize</expression>
            </param>
            <node name="grid1" prototype="corevector.grid" x="20" y="120">
                <param name="width">
                    <expression>parent.gridSize</expression>
                </param>
                <param name="height">
                    <expression>parent.gridSize</expression>
                </param>
                <param name="rows">
                    <expression>parent.gridRows</expression>
                </param>
                <param name="columns">
                    <expression>parent.gridRows</expression>
                </param>
            </node>
            <node name="ellipse1" prototype="corevector.ellipse" x="17" y="30">
                <param name="width">
                    <expression>parent.ellipseSize</expression>
                </param>
                <param name="height">
                    <expression>parent.ellipseSize</expression>
                </param>
            </node>
            <node name="compound1" prototype="corevector.compound" rendered="true" x="290" y="40">
                <param name="function">
                    <value>subtracted</value>
                </param>
            </node>
            <node name="place1" prototype="corevector.place" x="130" y="120"/>
            <node name="fit1" prototype="corevector.fit" x="210" y="80"/>
            <conn input="compound1" output="ellipse1" port="shape"/>
            <conn input="compound1" output="fit1" port="shapeB"/>
            <conn input="place1" output="ellipse1" port="shape"/>
            <conn input="place1" output="grid1" port="template"/>
            <conn input="fit1" output="place1" port="shape"/>
            <conn input="fit1" output="ellipse1" port="template"/>
        </node>
        <node name="geonet3" prototype="corevector.geonet" x="60" y="120">
            <param min="1.0" name="gridRows" type="int">
                <expression>parent.baseGridRows</expression>
            </param>
            <param min="1.0" name="gridSize" type="float">
                <expression>parent.baseGridSize</expression>
            </param>
            <param min="1.0" name="ellipseSize" type="float">
                <expression>parent.baseEllipseSize</expression>
            </param>
            <node name="grid1" prototype="corevector.grid" x="20" y="120">
                <param name="width">
                    <expression>parent.gridSize</expression>
                </param>
                <param name="height">
                    <expression>parent.gridSize</expression>
                </param>
                <param name="rows">
                    <expression>parent.gridRows</expression>
                </param>
                <param name="columns">
                    <expression>parent.gridRows</expression>
                </param>
            </node>
            <node name="ellipse1" prototype="corevector.ellipse" x="17" y="30">
                <param name="width">
                    <expression>parent.ellipseSize</expression>
                </param>
                <param name="height">
                    <expression>parent.ellipseSize</expression>
                </param>
            </node>
            <node name="compound1" prototype="corevector.compound" rendered="true" x="290" y="40">
                <param name="function">
                    <value>subtracted</value>
                </param>
            </node>
            <node name="place1" prototype="corevector.place" x="130" y="120"/>
            <node name="fit1" prototype="corevector.fit" x="210" y="80"/>
            <conn input="compound1" output="ellipse1" port="shape"/>
            <conn input="compound1" output="fit1" port="shapeB"/>
            <conn input="place1" output="ellipse1" port="shape"/>
            <conn input="place1" output="grid1" port="template"/>
            <conn input="fit1" output="place1" port="shape"/>
            <conn input="fit1" output="ellipse1" port="template"/>
        </node>
        <node name="geonet4" prototype="corevector.geonet" x="60" y="200">
            <param min="1.0" name="gridRows" type="int">
                <expression>parent.baseGridRows</expression>
            </param>
            <param min="1.0" name="gridSize" type="float">
                <expression>parent.baseGridSize</expression>
            </param>
            <param min="1.0" name="ellipseSize" type="float">
                <expression>parent.baseEllipseSize</expression>
            </param>
            <node name="grid1" prototype="corevector.grid" x="20" y="120">
                <param name="width">
                    <expression>parent.gridSize</expression>
                </param>
                <param name="height">
                    <expression>parent.gridSize</expression>
                </param>
                <param name="rows">
                    <expression>parent.gridRows</expression>
                </param>
                <param name="columns">
                    <expression>parent.gridRows</expression>
                </param>
            </node>
            <node name="ellipse1" prototype="corevector.ellipse" x="17" y="30">
                <param name="width">
                    <expression>parent.ellipseSize</expression>
                </param>
                <param name="height">
                    <expression>parent.ellipseSize</expression>
                </param>
            </node>
            <node name="compound1" prototype="corevector.compound" rendered="true" x="290" y="40">
                <param name="function">
                    <value>subtracted</value>
                </param>
            </node>
            <node name="place1" prototype="corevector.place" x="130" y="120"/>
            <node name="fit1" prototype="corevector.fit" x="210" y="80"/>
            <conn input="compound1" output="ellipse1" port="shape"/>
            <conn input="compound1" output="fit1" port="shapeB"/>
            <conn input="place1" output="ellipse1" port="shape"/>
            <conn input="place1" output="grid1" port="template"/>
            <conn input="fit1" output="place1" port="shape"/>
            <conn input="fit1" output="ellipse1" port="template"/>
        </node>
        <node name="geonet5" prototype="corevector.geonet" x="60" y="280">
            <param min="1.0" name="gridRows" type="int">
                <expression>parent.baseGridRows</expression>
            </param>
            <param min="1.0" name="gridSize" type="float">
                <expression>parent.baseGridSize</expression>
            </param>
            <param min="1.0" name="ellipseSize" type="float">
                <expression>parent.baseEllipseSize</expression>
            </param>
            <node name="grid1" prototype="corevector.grid" x="20" y="120">
                <param name="width">
                    <expression>parent.gridSize</expression>
                </param>
                <param name="height">
                    <expression>parent.gridSize</expression>
                </param>
                <param name="rows">
                    <expression>parent.gridRows</expression>
                </param>
                <param name="columns">
                    <expression>parent.gridRows</expression>
                </param>
            </node>
            <node name="ellipse1" prototype="corevector.ellipse" x="17" y="30">
                <param name="width">
                    <expression>parent.ellipseSize</expression>
                </param>
                <param name="height">
                    <expression>parent.ellipseSize</expression>
                </param>
            </node>
            <node name="compound1" prototype="corevector.compound" rendered="true" x="290" y="40">
                <param name="function">
                    <value>subtracted</value>
                </param>
            </node>
            <node name="place1" prototype="corevector.place" x="130" y="120"/>
            <node name="fit1" prototype="corevector.fit" x="210" y="80"/>
            <conn input="compound1" output="ellipse1" port="shape"/>
            <conn input="compound1" output="fit1" port="shapeB"/>
            <conn input="place1" output="ellipse1" port="shape"/>
            <conn input="place1" output="grid1" port="template"/>
            <conn input="fit1" output="place1" port="shape"/>
            <conn input="fit1" output="ellipse1" port="template"/>
        </node>
        <node name="transform4" prototype="corevector.transform" x="150" y="280">
            <param name="r">
                <expression>parent.rotation4</expression>
            </param>
            <param name="sx">
                <expression>parent.scale4</expression>
            </param>
            <param name="sy">
                <expression>parent.scale4</expression>
            </param>
        </node>
        <node name="merge1" prototype="corevector.merge" x="340" y="40"/>
        <node name="snap1" prototype="corevector.snap" rendered="true" x="440" y="40">
            <param name="distance">
                <expression>parent.gridsize</expression>
            </param>
            <param name="x">
                <expression>parent.gridX</expression>
            </param>
            <param name="y">
                <expression>parent.gridY</expression>
            </param>
        </node>
        <node name="color2" prototype="corevector.color" x="230" y="120">
            <param name="fill">
                <expression>parent.color2</expression>
            </param>
        </node>
        <node name="color1" prototype="corevector.color" x="230" y="40">
            <param name="fill">
                <expression>parent.color1</expression>
            </param>
        </node>
        <conn input="merge1" output="color3" port="shapes"/>
        <conn input="merge1" output="color1" port="shapes"/>
        <conn input="merge1" output="color2" port="shapes"/>
        <conn input="merge1" output="color4" port="shapes"/>
        <conn input="transform1" output="geonet2" port="shape"/>
        <conn input="color3" output="transform3" port="shape"/>
        <conn input="color4" output="transform4" port="shape"/>
        <conn input="snap1" output="merge1" port="shape"/>
        <conn input="color2" output="transform2" port="shape"/>
        <conn input="color1" output="transform1" port="shape"/>
        <conn input="transform2" output="geonet3" port="shape"/>
        <conn input="transform3" output="geonet4" port="shape"/>
        <conn input="transform4" output="geonet5" port="shape"/>
    </node>
</ndbx>
