<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<ndbx formatVersion="21" type="file" uuid="2083c770-7807-437c-883b-8560b6abf88b">
    <property name="canvasHeight" value="480"/>
    <property name="canvasWidth" value="480"/>
    <property name="canvasX" value="0"/>
    <property name="canvasY" value="0"/>
    <node name="root" prototype="core.network" renderedChild="scale1">
        <node name="centroid1" position="23.00,-15.00" prototype="corevector.centroid"/>
        <node name="colorize2" position="29.00,-13.00" prototype="corevector.colorize">
            <port name="fill" type="color" value="#00000000"/>
            <port name="stroke" type="color" value="#00a800ff"/>
            <port name="strokeWidth" type="float" value="2.0"/>
        </node>
        <node name="combine1" position="26.00,-9.00" prototype="list.combine"/>
        <node name="curl" position="26.00,-18.00" prototype="core.network" renderedChild="combine2">
            <node name="abs1" position="40.00,-7.00" prototype="math.abs"/>
            <node name="add1" position="36.00,2.00" prototype="math.add">
                <port name="value2" type="float" value="20.0"/>
            </node>
            <node name="base" position="-2.00,0.00" prototype="core.network" renderedChild="colorize1">
                <node name="colorize1" position="-1.00,2.00" prototype="corevector.colorize">
                    <port name="fill" type="color" value="#00000000"/>
                    <port name="strokeWidth" type="float" value="1.0"/>
                </node>
                <node name="number1" position="-1.00,-1.00" prototype="math.number">
                    <port name="value" type="float" value="89.0"/>
                </node>
                <node name="rect1" position="-1.00,1.00" prototype="corevector.rect">
                    <port name="position" type="point" value="-85.00,85.00"/>
                    <port name="width" type="float" value="89.0"/>
                    <port name="height" type="float" value="89.0"/>
                </node>
                <port childReference="number1.value" description="" label="" name="size" range="value" type="float" value="89.0" widget="float"/>
                <conn input="colorize1.shape" output="rect1"/>
                <conn input="rect1.width" output="number1"/>
                <conn input="rect1.height" output="number1"/>
            </node>
            <node name="base1" position="1.00,2.00" prototype="core.network" renderedChild="rotate1">
                <node name="colorize1" position="0.00,2.00" prototype="corevector.colorize">
                    <port name="fill" type="color" value="#00000000"/>
                    <port name="strokeWidth" type="float" value="1.0"/>
                </node>
                <node name="divide1" position="-5.00,2.00" prototype="math.divide">
                    <port name="value2" type="float" value="2.0"/>
                </node>
                <node name="make_point1" position="-5.00,6.00" prototype="corevector.make_point"/>
                <node name="multiply1" position="-4.00,4.00" prototype="math.multiply">
                    <port name="value2" type="float" value="-1.0"/>
                </node>
                <node name="null1" position="4.00,-1.00" prototype="corevector.null"/>
                <node name="number1" position="0.00,-1.00" prototype="math.number">
                    <port name="value" type="float" value="89.0"/>
                </node>
                <node name="point1" position="4.00,1.00" prototype="corevector.point"/>
                <node name="rect1" position="0.00,1.00" prototype="corevector.rect">
                    <port name="width" type="float" value="89.0"/>
                    <port name="height" type="float" value="89.0"/>
                </node>
                <node name="rotate1" position="2.00,12.00" prototype="corevector.rotate">
                    <port name="angle" type="float" value="-20.0"/>
                </node>
                <node name="second1" position="4.00,2.00" prototype="list.second"/>
                <node name="translate1" position="0.00,6.00" prototype="corevector.translate"/>
                <node name="translate2" position="-2.00,9.00" prototype="corevector.translate"/>
                <port childReference="number1.value" description="" label="" name="size" range="value" type="float" value="89.0" widget="float"/>
                <port childReference="null1.shape" description="The input shape." label="" name="prev_square" range="value" type="geometry" widget="none"/>
                <port childReference="rotate1.angle" description="The rotation angle (in degrees)." label="" name="angle" range="value" type="float" value="-20.0" widget="float"/>
                <conn input="colorize1.shape" output="rect1"/>
                <conn input="rect1.width" output="number1"/>
                <conn input="rect1.height" output="number1"/>
                <conn input="translate1.shape" output="colorize1"/>
                <conn input="point1.value" output="null1"/>
                <conn input="second1.list" output="point1"/>
                <conn input="translate1.translate" output="second1"/>
                <conn input="divide1.value1" output="number1"/>
                <conn input="multiply1.value1" output="divide1"/>
                <conn input="make_point1.x" output="divide1"/>
                <conn input="make_point1.y" output="multiply1"/>
                <conn input="translate2.shape" output="translate1"/>
                <conn input="translate2.translate" output="make_point1"/>
                <conn input="rotate1.shape" output="translate2"/>
                <conn input="rotate1.origin" output="second1"/>
            </node>
            <node name="base2" position="4.00,4.00" prototype="core.network" renderedChild="rotate1">
                <node name="colorize1" position="0.00,2.00" prototype="corevector.colorize">
                    <port name="fill" type="color" value="#00000000"/>
                    <port name="strokeWidth" type="float" value="1.0"/>
                </node>
                <node name="divide1" position="-4.00,1.00" prototype="math.divide">
                    <port name="value2" type="float" value="2.0"/>
                </node>
                <node name="make_point1" position="-4.00,5.00" prototype="corevector.make_point"/>
                <node name="multiply1" position="-3.00,3.00" prototype="math.multiply">
                    <port name="value2" type="float" value="-1.0"/>
                </node>
                <node name="null1" position="4.00,-1.00" prototype="corevector.null"/>
                <node name="number1" position="0.00,-1.00" prototype="math.number">
                    <port name="value" type="float" value="89.0"/>
                </node>
                <node name="point1" position="4.00,1.00" prototype="corevector.point"/>
                <node name="rect1" position="0.00,1.00" prototype="corevector.rect">
                    <port name="width" type="float" value="89.0"/>
                    <port name="height" type="float" value="89.0"/>
                </node>
                <node name="rotate1" position="3.00,11.00" prototype="corevector.rotate">
                    <port name="angle" type="float" value="-20.0"/>
                </node>
                <node name="second1" position="4.00,2.00" prototype="list.second"/>
                <node name="translate1" position="0.00,6.00" prototype="corevector.translate"/>
                <node name="translate2" position="0.00,9.00" prototype="corevector.translate"/>
                <port childReference="number1.value" description="" label="" name="size" range="value" type="float" value="89.0" widget="float"/>
                <port childReference="null1.shape" description="The input shape." label="" name="prev_square" range="value" type="geometry" widget="none"/>
                <port childReference="rotate1.angle" description="The rotation angle (in degrees)." label="" name="angle" range="value" type="float" value="-20.0" widget="float"/>
                <conn input="colorize1.shape" output="rect1"/>
                <conn input="rect1.width" output="number1"/>
                <conn input="rect1.height" output="number1"/>
                <conn input="translate1.shape" output="colorize1"/>
                <conn input="point1.value" output="null1"/>
                <conn input="second1.list" output="point1"/>
                <conn input="translate1.translate" output="second1"/>
                <conn input="divide1.value1" output="number1"/>
                <conn input="multiply1.value1" output="divide1"/>
                <conn input="make_point1.x" output="divide1"/>
                <conn input="make_point1.y" output="multiply1"/>
                <conn input="translate2.shape" output="translate1"/>
                <conn input="translate2.translate" output="make_point1"/>
                <conn input="rotate1.shape" output="translate2"/>
                <conn input="rotate1.origin" output="second1"/>
            </node>
            <node name="base3" position="7.00,6.00" prototype="core.network" renderedChild="rotate1">
                <node name="colorize1" position="0.00,2.00" prototype="corevector.colorize">
                    <port name="fill" type="color" value="#00000000"/>
                    <port name="strokeWidth" type="float" value="1.0"/>
                </node>
                <node name="divide1" position="-4.00,1.00" prototype="math.divide">
                    <port name="value2" type="float" value="2.0"/>
                </node>
                <node name="make_point1" position="-4.00,5.00" prototype="corevector.make_point"/>
                <node name="multiply1" position="-3.00,3.00" prototype="math.multiply">
                    <port name="value2" type="float" value="-1.0"/>
                </node>
                <node name="null1" position="4.00,-1.00" prototype="corevector.null"/>
                <node name="number1" position="0.00,-1.00" prototype="math.number">
                    <port name="value" type="float" value="89.0"/>
                </node>
                <node name="point1" position="4.00,1.00" prototype="corevector.point"/>
                <node name="rect1" position="0.00,1.00" prototype="corevector.rect">
                    <port name="width" type="float" value="89.0"/>
                    <port name="height" type="float" value="89.0"/>
                </node>
                <node name="rotate1" position="3.00,11.00" prototype="corevector.rotate">
                    <port name="angle" type="float" value="-20.0"/>
                </node>
                <node name="second1" position="4.00,2.00" prototype="list.second"/>
                <node name="translate1" position="0.00,6.00" prototype="corevector.translate"/>
                <node name="translate2" position="0.00,9.00" prototype="corevector.translate"/>
                <port childReference="number1.value" description="" label="" name="size" range="value" type="float" value="89.0" widget="float"/>
                <port childReference="null1.shape" description="The input shape." label="" name="prev_square" range="value" type="geometry" widget="none"/>
                <port childReference="rotate1.angle" description="The rotation angle (in degrees)." label="" name="angle" range="value" type="float" value="-20.0" widget="float"/>
                <conn input="colorize1.shape" output="rect1"/>
                <conn input="rect1.width" output="number1"/>
                <conn input="rect1.height" output="number1"/>
                <conn input="translate1.shape" output="colorize1"/>
                <conn input="point1.value" output="null1"/>
                <conn input="second1.list" output="point1"/>
                <conn input="translate1.translate" output="second1"/>
                <conn input="divide1.value1" output="number1"/>
                <conn input="multiply1.value1" output="divide1"/>
                <conn input="make_point1.x" output="divide1"/>
                <conn input="make_point1.y" output="multiply1"/>
                <conn input="translate2.shape" output="translate1"/>
                <conn input="translate2.translate" output="make_point1"/>
                <conn input="rotate1.shape" output="translate2"/>
                <conn input="rotate1.origin" output="second1"/>
            </node>
            <node name="base4" position="10.00,8.00" prototype="core.network" renderedChild="rotate1">
                <node name="colorize1" position="0.00,2.00" prototype="corevector.colorize">
                    <port name="fill" type="color" value="#00000000"/>
                    <port name="strokeWidth" type="float" value="1.0"/>
                </node>
                <node name="divide1" position="-4.00,1.00" prototype="math.divide">
                    <port name="value2" type="float" value="2.0"/>
                </node>
                <node name="make_point1" position="-4.00,5.00" prototype="corevector.make_point"/>
                <node name="multiply1" position="-3.00,3.00" prototype="math.multiply">
                    <port name="value2" type="float" value="-1.0"/>
                </node>
                <node name="null1" position="4.00,-1.00" prototype="corevector.null"/>
                <node name="number1" position="0.00,-1.00" prototype="math.number">
                    <port name="value" type="float" value="89.0"/>
                </node>
                <node name="point1" position="4.00,1.00" prototype="corevector.point"/>
                <node name="rect1" position="0.00,1.00" prototype="corevector.rect">
                    <port name="width" type="float" value="89.0"/>
                    <port name="height" type="float" value="89.0"/>
                </node>
                <node name="rotate1" position="3.00,11.00" prototype="corevector.rotate">
                    <port name="angle" type="float" value="-20.0"/>
                </node>
                <node name="second1" position="4.00,2.00" prototype="list.second"/>
                <node name="translate1" position="0.00,6.00" prototype="corevector.translate"/>
                <node name="translate2" position="0.00,9.00" prototype="corevector.translate"/>
                <port childReference="number1.value" description="" label="" name="size" range="value" type="float" value="89.0" widget="float"/>
                <port childReference="null1.shape" description="The input shape." label="" name="prev_square" range="value" type="geometry" widget="none"/>
                <port childReference="rotate1.angle" description="The rotation angle (in degrees)." label="" name="angle" range="value" type="float" value="-20.0" widget="float"/>
                <conn input="colorize1.shape" output="rect1"/>
                <conn input="rect1.width" output="number1"/>
                <conn input="rect1.height" output="number1"/>
                <conn input="translate1.shape" output="colorize1"/>
                <conn input="point1.value" output="null1"/>
                <conn input="second1.list" output="point1"/>
                <conn input="translate1.translate" output="second1"/>
                <conn input="divide1.value1" output="number1"/>
                <conn input="multiply1.value1" output="divide1"/>
                <conn input="make_point1.x" output="divide1"/>
                <conn input="make_point1.y" output="multiply1"/>
                <conn input="translate2.shape" output="translate1"/>
                <conn input="translate2.translate" output="make_point1"/>
                <conn input="rotate1.shape" output="translate2"/>
                <conn input="rotate1.origin" output="second1"/>
            </node>
            <node name="base5" position="13.00,10.00" prototype="core.network" renderedChild="rotate1">
                <node name="colorize1" position="0.00,2.00" prototype="corevector.colorize">
                    <port name="fill" type="color" value="#00000000"/>
                    <port name="strokeWidth" type="float" value="1.0"/>
                </node>
                <node name="divide1" position="-4.00,1.00" prototype="math.divide">
                    <port name="value2" type="float" value="2.0"/>
                </node>
                <node name="make_point1" position="-4.00,5.00" prototype="corevector.make_point"/>
                <node name="multiply1" position="-3.00,3.00" prototype="math.multiply">
                    <port name="value2" type="float" value="-1.0"/>
                </node>
                <node name="null1" position="4.00,-1.00" prototype="corevector.null"/>
                <node name="number1" position="0.00,-1.00" prototype="math.number">
                    <port name="value" type="float" value="89.0"/>
                </node>
                <node name="point1" position="4.00,1.00" prototype="corevector.point"/>
                <node name="rect1" position="0.00,1.00" prototype="corevector.rect">
                    <port name="width" type="float" value="89.0"/>
                    <port name="height" type="float" value="89.0"/>
                </node>
                <node name="rotate1" position="3.00,11.00" prototype="corevector.rotate">
                    <port name="angle" type="float" value="-20.0"/>
                </node>
                <node name="second1" position="4.00,2.00" prototype="list.second"/>
                <node name="translate1" position="0.00,6.00" prototype="corevector.translate"/>
                <node name="translate2" position="0.00,9.00" prototype="corevector.translate"/>
                <port childReference="number1.value" description="" label="" name="size" range="value" type="float" value="89.0" widget="float"/>
                <port childReference="null1.shape" description="The input shape." label="" name="prev_square" range="value" type="geometry" widget="none"/>
                <port childReference="rotate1.angle" description="The rotation angle (in degrees)." label="" name="angle" range="value" type="float" value="-20.0" widget="float"/>
                <conn input="colorize1.shape" output="rect1"/>
                <conn input="rect1.width" output="number1"/>
                <conn input="rect1.height" output="number1"/>
                <conn input="translate1.shape" output="colorize1"/>
                <conn input="point1.value" output="null1"/>
                <conn input="second1.list" output="point1"/>
                <conn input="translate1.translate" output="second1"/>
                <conn input="divide1.value1" output="number1"/>
                <conn input="multiply1.value1" output="divide1"/>
                <conn input="make_point1.x" output="divide1"/>
                <conn input="make_point1.y" output="multiply1"/>
                <conn input="translate2.shape" output="translate1"/>
                <conn input="translate2.translate" output="make_point1"/>
                <conn input="rotate1.shape" output="translate2"/>
                <conn input="rotate1.origin" output="second1"/>
            </node>
            <node name="base6" position="16.00,12.00" prototype="core.network" renderedChild="rotate1">
                <node name="colorize1" position="0.00,2.00" prototype="corevector.colorize">
                    <port name="fill" type="color" value="#00000000"/>
                    <port name="strokeWidth" type="float" value="1.0"/>
                </node>
                <node name="divide1" position="-4.00,1.00" prototype="math.divide">
                    <port name="value2" type="float" value="2.0"/>
                </node>
                <node name="make_point1" position="-4.00,5.00" prototype="corevector.make_point"/>
                <node name="multiply1" position="-3.00,3.00" prototype="math.multiply">
                    <port name="value2" type="float" value="-1.0"/>
                </node>
                <node name="null1" position="4.00,-1.00" prototype="corevector.null"/>
                <node name="number1" position="0.00,-1.00" prototype="math.number">
                    <port name="value" type="float" value="89.0"/>
                </node>
                <node name="point1" position="4.00,1.00" prototype="corevector.point"/>
                <node name="rect1" position="0.00,1.00" prototype="corevector.rect">
                    <port name="width" type="float" value="89.0"/>
                    <port name="height" type="float" value="89.0"/>
                </node>
                <node name="rotate1" position="3.00,11.00" prototype="corevector.rotate">
                    <port name="angle" type="float" value="-20.0"/>
                </node>
                <node name="second1" position="4.00,2.00" prototype="list.second"/>
                <node name="translate1" position="0.00,6.00" prototype="corevector.translate"/>
                <node name="translate2" position="0.00,9.00" prototype="corevector.translate"/>
                <port childReference="number1.value" description="" label="" name="size" range="value" type="float" value="89.0" widget="float"/>
                <port childReference="null1.shape" description="The input shape." label="" name="prev_square" range="value" type="geometry" widget="none"/>
                <port childReference="rotate1.angle" description="The rotation angle (in degrees)." label="" name="angle" range="value" type="float" value="-20.0" widget="float"/>
                <conn input="colorize1.shape" output="rect1"/>
                <conn input="rect1.width" output="number1"/>
                <conn input="rect1.height" output="number1"/>
                <conn input="translate1.shape" output="colorize1"/>
                <conn input="point1.value" output="null1"/>
                <conn input="second1.list" output="point1"/>
                <conn input="translate1.translate" output="second1"/>
                <conn input="divide1.value1" output="number1"/>
                <conn input="multiply1.value1" output="divide1"/>
                <conn input="make_point1.x" output="divide1"/>
                <conn input="make_point1.y" output="multiply1"/>
                <conn input="translate2.shape" output="translate1"/>
                <conn input="translate2.translate" output="make_point1"/>
                <conn input="rotate1.shape" output="translate2"/>
                <conn input="rotate1.origin" output="second1"/>
            </node>
            <node name="colorize1" position="27.00,22.00" prototype="corevector.colorize">
                <port name="fill" type="color" value="#ff000000"/>
                <port name="stroke" type="color" value="#fd0000ff"/>
                <port name="strokeWidth" type="float" value="1.0"/>
            </node>
            <node name="colorize2" position="24.00,22.00" prototype="corevector.colorize">
                <port name="fill" type="color" value="#ff000000"/>
                <port name="stroke" type="color" value="#ff0000ff"/>
                <port name="strokeWidth" type="float" value="1.0"/>
            </node>
            <node name="combine1" position="5.00,18.00" prototype="list.combine"/>
            <node name="combine2" position="21.00,31.00" prototype="list.combine"/>
            <node name="compare1" position="36.00,15.00" prototype="math.compare"/>
            <node name="curve" position="17.00,26.00" prototype="core.network" renderedChild="colorize1">
                <node name="colorize1" position="-12.00,14.00" prototype="corevector.colorize">
                    <port name="fill" type="color" value="#00000000"/>
                    <port name="stroke" type="color" value="#0300ffff"/>
                    <port name="strokeWidth" type="float" value="1.0"/>
                </node>
                <node name="last1" position="-12.00,10.00" prototype="list.last"/>
                <node name="null1" position="-11.00,4.00" prototype="corevector.null"/>
                <node name="number1" position="-16.00,8.00" prototype="math.number"/>
                <node name="point2" position="-11.00,6.00" prototype="corevector.point"/>
                <node name="quad_curve1" position="-12.00,13.00" prototype="corevector.quad_curve"/>
                <node name="second2" position="-9.00,10.00" prototype="list.second"/>
                <port childReference="null1.shape" description="The input shape." label="" name="square" range="value" type="geometry" widget="none"/>
                <port childReference="number1.value" description="" label="" name="bend" range="value" type="float" value="0.0" widget="float"/>
                <conn input="last1.list" output="point2"/>
                <conn input="second2.list" output="point2"/>
                <conn input="quad_curve1.point1" output="last1"/>
                <conn input="quad_curve1.point2" output="second2"/>
                <conn input="colorize1.shape" output="quad_curve1"/>
                <conn input="point2.value" output="null1"/>
                <conn input="quad_curve1.distance" output="number1"/>
            </node>
            <node name="divide1" position="22.00,12.00" prototype="math.divide"/>
            <node name="divide2" position="28.00,7.00" prototype="math.divide">
                <port name="value1" type="float" value="-155.0"/>
            </node>
            <node name="ellipse1" position="27.00,21.00" prototype="corevector.ellipse">
                <port name="width" type="float" value="3.0"/>
                <port name="height" type="float" value="3.0"/>
            </node>
            <node name="ellipse2" position="24.00,21.00" prototype="corevector.ellipse">
                <port name="position" type="point" value="95.00,-95.00"/>
                <port name="width" type="float" value="20.0"/>
                <port name="height" type="float" value="20.0"/>
            </node>
            <node name="make_numbers2" position="17.00,-15.00" prototype="math.make_numbers">
                <port name="string" type="string" value="89,55,34,21,13,8,5"/>
                <port name="separator" type="string" value=","/>
            </node>
            <node name="metronome" position="22.00,-15.00" prototype="core.network" renderedChild="switch1">
                <node name="compare1" position="25.00,-14.00" prototype="math.compare">
                    <port name="value2" type="float" value="181.0"/>
                    <port name="comparator" type="string" value="&gt;"/>
                </node>
                <node name="convert_range1" position="19.00,-14.00" prototype="math.convert_range">
                    <port name="source_start" type="float" value="1.0"/>
                    <port name="source_end" type="float" value="181.0"/>
                    <port name="target_start" type="float" value="-90.0"/>
                    <port name="target_end" type="float" value="90.0"/>
                </node>
                <node name="convert_range2" position="22.00,-14.00" prototype="math.convert_range">
                    <port name="source_start" type="float" value="182.0"/>
                    <port name="source_end" type="float" value="362.0"/>
                    <port name="target_start" type="float" value="90.0"/>
                    <port name="target_end" type="float" value="-90.0"/>
                </node>
                <node name="mod1" position="22.00,-17.00" prototype="math.mod">
                    <port name="value2" type="float" value="362.0"/>
                </node>
                <node name="switch1" position="19.00,-11.00" prototype="list.switch"/>
                <port childReference="mod1.value1" description="" label="" name="value1" range="value" type="float" value="0.0" widget="float"/>
                <conn input="compare1.value1" output="mod1"/>
                <conn input="convert_range1.value" output="mod1"/>
                <conn input="convert_range2.value" output="mod1"/>
                <conn input="switch1.input1" output="convert_range1"/>
                <conn input="switch1.input2" output="convert_range2"/>
                <conn input="switch1.index" output="compare1"/>
            </node>
            <node name="multiply1" position="24.00,-7.00" prototype="math.multiply">
                <port name="value2" type="float" value="2.0"/>
            </node>
            <node name="multiply2" position="27.00,-7.00" prototype="math.multiply">
                <port name="value2" type="float" value="3.0"/>
            </node>
            <node name="multiply3" position="30.00,-7.00" prototype="math.multiply">
                <port name="value2" type="float" value="4.0"/>
            </node>
            <node name="multiply4" position="33.00,-7.00" prototype="math.multiply">
                <port name="value2" type="float" value="5.0"/>
            </node>
            <node name="multiply5" position="36.00,-7.00" prototype="math.multiply">
                <port name="value2" type="float" value="6.0"/>
            </node>
            <node name="multiply6" position="40.00,0.00" prototype="math.multiply">
                <port name="value2" type="float" value="2.0"/>
            </node>
            <node name="multiply7" position="36.00,0.00" prototype="math.multiply">
                <port name="value2" type="float" value="2.3"/>
            </node>
            <node name="number3" position="22.00,-12.00" prototype="math.number">
                <port name="value" type="float" value="90.0"/>
            </node>
            <node name="point1" position="18.00,15.00" prototype="corevector.point"/>
            <node name="second1" position="21.00,18.00" prototype="list.second"/>
            <node name="slice1" position="-2.00,-8.00" prototype="list.slice">
                <port name="size" type="int" value="1"/>
            </node>
            <node name="slice2" position="1.00,-8.00" prototype="list.slice">
                <port name="start_index" type="int" value="1"/>
                <port name="size" type="int" value="1"/>
            </node>
            <node name="slice3" position="4.00,-8.00" prototype="list.slice">
                <port name="start_index" type="int" value="2"/>
                <port name="size" type="int" value="1"/>
            </node>
            <node name="slice4" position="7.00,-8.00" prototype="list.slice">
                <port name="start_index" type="int" value="3"/>
                <port name="size" type="int" value="1"/>
            </node>
            <node name="slice5" position="10.00,-8.00" prototype="list.slice">
                <port name="start_index" type="int" value="4"/>
                <port name="size" type="int" value="1"/>
            </node>
            <node name="slice6" position="13.00,-8.00" prototype="list.slice">
                <port name="start_index" type="int" value="5"/>
                <port name="size" type="int" value="1"/>
            </node>
            <node name="slice7" position="16.00,-8.00" prototype="list.slice">
                <port name="start_index" type="int" value="6"/>
                <port name="size" type="int" value="1"/>
            </node>
            <node name="sqrt1" position="40.00,-1.00" prototype="math.sqrt"/>
            <node name="subtract1" position="39.00,2.00" prototype="math.subtract">
                <port name="value1" type="float" value="20.0"/>
            </node>
            <node name="switch1" position="27.00,26.00" prototype="list.switch"/>
            <port childReference="metronome.value1" description="" label="" name="value1" range="value" type="float" value="0.0" widget="float"/>
            <conn input="base1.prev_square" output="base"/>
            <conn input="combine1.list1" output="base"/>
            <conn input="combine1.list2" output="base1"/>
            <conn input="base1.angle" output="number3"/>
            <conn input="base2.prev_square" output="base1"/>
            <conn input="combine1.list3" output="base2"/>
            <conn input="multiply1.value1" output="number3"/>
            <conn input="base2.angle" output="multiply1"/>
            <conn input="base3.prev_square" output="base2"/>
            <conn input="multiply2.value1" output="number3"/>
            <conn input="base3.angle" output="multiply2"/>
            <conn input="combine1.list4" output="base3"/>
            <conn input="base4.prev_square" output="base3"/>
            <conn input="multiply3.value1" output="number3"/>
            <conn input="base4.angle" output="multiply3"/>
            <conn input="combine1.list5" output="base4"/>
            <conn input="base5.prev_square" output="base4"/>
            <conn input="multiply4.value1" output="number3"/>
            <conn input="base5.angle" output="multiply4"/>
            <conn input="combine1.list6" output="base5"/>
            <conn input="base6.prev_square" output="base5"/>
            <conn input="multiply5.value1" output="number3"/>
            <conn input="base6.angle" output="multiply5"/>
            <conn input="combine1.list7" output="base6"/>
            <conn input="number3.value" output="metronome"/>
            <conn input="curve.square" output="combine1"/>
            <conn input="divide1.value1" output="number3"/>
            <conn input="curve.bend" output="divide1"/>
            <conn input="slice1.list" output="make_numbers2"/>
            <conn input="slice2.list" output="make_numbers2"/>
            <conn input="slice3.list" output="make_numbers2"/>
            <conn input="slice4.list" output="make_numbers2"/>
            <conn input="slice5.list" output="make_numbers2"/>
            <conn input="slice6.list" output="make_numbers2"/>
            <conn input="slice7.list" output="make_numbers2"/>
            <conn input="base.size" output="slice1"/>
            <conn input="base1.size" output="slice2"/>
            <conn input="base2.size" output="slice3"/>
            <conn input="base3.size" output="slice4"/>
            <conn input="base4.size" output="slice5"/>
            <conn input="base5.size" output="slice6"/>
            <conn input="base6.size" output="slice7"/>
            <conn input="divide2.value2" output="make_numbers2"/>
            <conn input="divide1.value2" output="divide2"/>
            <conn input="colorize1.shape" output="ellipse1"/>
            <conn input="point1.value" output="base6"/>
            <conn input="second1.list" output="point1"/>
            <conn input="ellipse1.position" output="second1"/>
            <conn input="multiply6.value1" output="sqrt1"/>
            <conn input="subtract1.value2" output="multiply6"/>
            <conn input="ellipse1.width" output="subtract1"/>
            <conn input="ellipse1.height" output="subtract1"/>
            <conn input="compare1.value1" output="number3"/>
            <conn input="switch1.index" output="compare1"/>
            <conn input="abs1.value" output="number3"/>
            <conn input="sqrt1.value" output="abs1"/>
            <conn input="switch1.input2" output="colorize1"/>
            <conn input="combine2.list3" output="switch1"/>
            <conn input="switch1.input1" output="colorize2"/>
            <conn input="colorize2.shape" output="ellipse2"/>
            <conn input="ellipse2.width" output="add1"/>
            <conn input="ellipse2.height" output="add1"/>
            <conn input="multiply7.value1" output="abs1"/>
            <conn input="add1.value1" output="multiply7"/>
            <conn input="combine2.list4" output="curve"/>
        </node>
        <node name="ellipse1" position="23.00,-13.00" prototype="corevector.ellipse">
            <port name="width" type="float" value="250.0"/>
            <port name="height" type="float" value="250.0"/>
        </node>
        <node name="frame1" position="26.00,-20.00" prototype="core.frame"/>
        <node name="group1" position="26.00,-13.00" prototype="corevector.group"/>
        <node name="last1" position="23.00,-16.00" prototype="list.last"/>
        <node name="rect1" position="23.00,-11.00" prototype="corevector.rect">
            <port name="width" type="float" value="960.0"/>
            <port name="height" type="float" value="960.0"/>
        </node>
        <node name="rest1" position="29.00,-14.00" prototype="list.rest"/>
        <node name="scale1" position="26.00,-7.00" prototype="corevector.scale">
            <port name="scale" type="point" value="50.00,50.00"/>
        </node>
        <node name="shape_on_path1" position="26.00,-11.00" prototype="corevector.shape_on_path">
            <port name="amount" type="int" value="48"/>
            <port name="alignment" type="string" value="distributed"/>
        </node>
        <node name="translate1" position="23.00,-14.00" prototype="corevector.translate">
            <port name="translate" type="point" value="0.00,-36.00"/>
        </node>
        <node name="translate2" position="29.00,-11.00" prototype="corevector.translate">
            <port name="translate" type="point" value="-307.00,306.00"/>
        </node>
        <conn input="curl.value1" output="frame1"/>
        <conn input="group1.shapes" output="curl"/>
        <conn input="shape_on_path1.shape" output="group1"/>
        <conn input="last1.list" output="curl"/>
        <conn input="centroid1.shape" output="last1"/>
        <conn input="shape_on_path1.path" output="ellipse1"/>
        <conn input="rest1.list" output="curl"/>
        <conn input="translate1.shape" output="centroid1"/>
        <conn input="ellipse1.position" output="translate1"/>
        <conn input="colorize2.shape" output="rest1"/>
        <conn input="translate2.shape" output="colorize2"/>
        <conn input="combine1.list7" output="translate2"/>
        <conn input="combine1.list2" output="shape_on_path1"/>
        <conn input="combine1.list1" output="rect1"/>
        <conn input="scale1.shape" output="combine1"/>
    </node>
</ndbx>
