<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<ndbx formatVersion="18" type="file" uuid="7aaac7a7-7204-46f8-ba68-aa18f6b8606a">
    <property name="canvasHeight" value="1000"/>
    <property name="canvasWidth" value="1000"/>
    <property name="canvasX" value="0"/>
    <property name="canvasY" value="0"/>
    <node name="root" prototype="core.network" renderedChild="combine1">
        <node name="colorize1" position="8.00,14.00" prototype="corevector.colorize">
            <port name="fill" type="color" value="#00000000"/>
            <port name="stroke" type="color" value="#ffffffff"/>
            <port name="strokeWidth" type="float" value="2.0"/>
        </node>
        <node name="colorize2" position="5.00,13.00" prototype="corevector.colorize">
            <port name="fill" type="color" value="#00d7b3ff"/>
        </node>
        <node name="colorize3" position="2.00,13.00" prototype="corevector.colorize">
            <port name="fill" type="color" value="#434343fc"/>
        </node>
        <node name="combine1" position="6.00,16.00" prototype="list.combine"/>
        <node name="compound1" position="10.00,11.00" prototype="corevector.compound">
            <port name="function" type="string" value="intersected"/>
        </node>
        <node name="delete1" position="12.00,13.00" prototype="corevector.delete">
            <port name="operation" type="string" value="non-selected"/>
        </node>
        <node name="divide1" position="10.00,6.00" prototype="math.divide">
            <port name="value2" type="float" value="1.5"/>
        </node>
        <node name="ellipse1" position="6.00,9.00" prototype="corevector.ellipse">
            <port name="position" type="point" value="151.14,-42.98"/>
            <port name="width" type="float" value="200.0"/>
            <port name="height" type="float" value="200.0"/>
        </node>
        <node name="ellipse2" position="3.00,9.00" prototype="corevector.ellipse">
            <port name="position" type="point" value="151.14,-42.98"/>
            <port name="width" type="float" value="198.0"/>
            <port name="height" type="float" value="198.0"/>
        </node>
        <node name="first1" position="8.00,12.00" prototype="list.first"/>
        <node name="frame1" position="9.00,5.00" prototype="core.frame"/>
        <node name="group1" position="13.00,10.00" prototype="corevector.group"/>
        <node name="line1" position="16.00,3.00" prototype="corevector.line">
            <port name="point1" type="point" value="-89.00,-152.00"/>
            <port name="point2" type="point" value="-138.00,42.00"/>
        </node>
        <node name="point1" position="16.00,7.00" prototype="corevector.point"/>
        <node name="rect1" position="1.00,11.00" prototype="corevector.rect">
            <port name="position" type="point" value="141.00,-37.00"/>
            <port name="width" type="float" value="400.0"/>
            <port name="height" type="float" value="400.0"/>
        </node>
        <node name="resample1" position="16.00,5.00" prototype="corevector.resample">
            <port name="method" type="string" value="amount"/>
        </node>
        <node name="resample2" position="13.00,12.00" prototype="corevector.resample">
            <port name="length" type="float" value="2.0"/>
        </node>
        <node name="sineWave" position="10.00,9.00" prototype="core.network" renderedChild="translate2">
            <node name="Amplitude" position="-4.00,-8.00" prototype="math.number">
                <port name="value" type="float" value="15.0"/>
            </node>
            <node name="Frequency" position="-1.00,-8.00" prototype="math.number">
                <port name="value" type="float" value="32.0"/>
            </node>
            <node name="PhaseShift" position="2.00,-8.00" prototype="math.number"/>
            <node name="add1" position="0.00,1.00" prototype="math.add">
                <port name="value2" type="float" value="1.0"/>
            </node>
            <node name="add2" position="8.00,1.00" prototype="math.add">
                <port name="value2" type="float" value="1.0"/>
            </node>
            <node name="amount" position="5.00,-8.00" prototype="math.number">
                <port name="value" type="float" value="13.0"/>
            </node>
            <node name="combine1" position="1.00,10.00" prototype="list.combine"/>
            <node name="cull1" position="0.00,0.00" prototype="list.cull"/>
            <node name="cull2" position="8.00,0.00" prototype="list.cull"/>
            <node name="even1" position="8.00,-1.00" prototype="math.even"/>
            <node name="make_point1" position="-4.00,5.00" prototype="corevector.make_point"/>
            <node name="make_point2" position="-1.00,5.00" prototype="corevector.make_point"/>
            <node name="make_point3" position="6.00,5.00" prototype="corevector.make_point"/>
            <node name="make_point4" position="9.00,5.00" prototype="corevector.make_point"/>
            <node name="make_point5" position="5.00,11.00" prototype="corevector.make_point"/>
            <node name="mod1" position="2.00,-5.00" prototype="math.mod"/>
            <node name="multiply1" position="0.00,-6.00" prototype="math.multiply">
                <port name="value2" type="float" value="2.0"/>
            </node>
            <node name="multiply2" position="-4.00,3.00" prototype="math.multiply"/>
            <node name="multiply3" position="-1.00,3.00" prototype="math.multiply"/>
            <node name="multiply4" position="9.00,3.00" prototype="math.multiply"/>
            <node name="multiply5" position="6.00,3.00" prototype="math.multiply"/>
            <node name="negate" position="-2.00,-4.00" prototype="math.multiply">
                <port name="value2" type="float" value="-1.0"/>
            </node>
            <node name="odd1" position="0.00,-1.00" prototype="math.odd"/>
            <node name="quad_curve1" position="-4.00,7.00" prototype="corevector.quad_curve"/>
            <node name="quad_curve2" position="6.00,7.00" prototype="corevector.quad_curve">
                <port name="point1" type="point" value="100.00,0.00"/>
                <port name="point2" type="point" value="200.00,0.00"/>
                <port name="distance" type="float" value="-50.0"/>
            </node>
            <node name="range1" position="5.00,-5.00" prototype="math.range"/>
            <node name="translate1" position="1.00,13.00" prototype="corevector.translate"/>
            <node name="translate2" position="1.00,15.00" prototype="corevector.translate"/>
            <port childReference="Amplitude.value" description="" label="" name="amp" range="value" type="float" value="15.0" widget="float"/>
            <port childReference="Frequency.value" description="" label="" name="freq" range="value" type="float" value="32.0" widget="float"/>
            <port childReference="PhaseShift.value" description="" label="" name="shift" range="value" type="float" value="0.0" widget="float"/>
            <port childReference="translate2.translate" description="The amount of translation." label="" name="position" range="value" type="point" value="0.00,0.00" widget="point"/>
            <conn input="combine1.list1" output="quad_curve1"/>
            <conn input="combine1.list2" output="quad_curve2"/>
            <conn input="quad_curve1.distance" output="Amplitude"/>
            <conn input="range1.end" output="amount"/>
            <conn input="odd1.value" output="range1"/>
            <conn input="even1.value" output="range1"/>
            <conn input="cull1.booleans" output="odd1"/>
            <conn input="cull2.booleans" output="even1"/>
            <conn input="cull1.list" output="range1"/>
            <conn input="cull2.list" output="range1"/>
            <conn input="add1.value1" output="cull1"/>
            <conn input="add2.value1" output="cull2"/>
            <conn input="multiply3.value1" output="add1"/>
            <conn input="multiply2.value1" output="cull1"/>
            <conn input="multiply5.value1" output="cull2"/>
            <conn input="multiply4.value1" output="add2"/>
            <conn input="multiply2.value2" output="Frequency"/>
            <conn input="multiply3.value2" output="Frequency"/>
            <conn input="multiply5.value2" output="Frequency"/>
            <conn input="multiply4.value2" output="Frequency"/>
            <conn input="quad_curve1.point1" output="make_point1"/>
            <conn input="quad_curve1.point2" output="make_point2"/>
            <conn input="negate.value1" output="Amplitude"/>
            <conn input="quad_curve2.distance" output="negate"/>
            <conn input="quad_curve2.point1" output="make_point3"/>
            <conn input="quad_curve2.point2" output="make_point4"/>
            <conn input="mod1.value1" output="PhaseShift"/>
            <conn input="mod1.value2" output="multiply1"/>
            <conn input="multiply1.value1" output="Frequency"/>
            <conn input="make_point1.x" output="multiply2"/>
            <conn input="make_point2.x" output="multiply3"/>
            <conn input="make_point3.x" output="multiply5"/>
            <conn input="make_point4.x" output="multiply4"/>
            <conn input="translate1.translate" output="make_point5"/>
            <conn input="translate2.shape" output="translate1"/>
            <conn input="make_point5.x" output="mod1"/>
            <conn input="translate1.shape" output="combine1"/>
        </node>
        <conn input="resample1.shape" output="line1"/>
        <conn input="compound1.shape2" output="ellipse1"/>
        <conn input="compound1.shape1" output="sineWave"/>
        <conn input="colorize2.shape" output="ellipse2"/>
        <conn input="combine1.list3" output="colorize1"/>
        <conn input="combine1.list2" output="colorize2"/>
        <conn input="colorize3.shape" output="rect1"/>
        <conn input="combine1.list1" output="colorize3"/>
        <conn input="point1.value" output="resample1"/>
        <conn input="sineWave.position" output="point1"/>
        <conn input="divide1.value1" output="frame1"/>
        <conn input="sineWave.shift" output="divide1"/>
        <conn input="first1.list" output="sineWave"/>
        <conn input="group1.shapes" output="sineWave"/>
        <conn input="resample2.shape" output="group1"/>
        <conn input="delete1.shape" output="resample2"/>
        <conn input="delete1.bounding" output="ellipse1"/>
        <conn input="colorize1.shape" output="delete1"/>
    </node>
</ndbx>
