<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<ndbx formatVersion="18" type="file" uuid="f59f214c-9221-4b79-94a8-e5c1f2e7cc8e">
    <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="combine1" position="3.00,16.00" prototype="list.combine"/>
        <node name="number1" position="3.00,6.00" prototype="math.number">
            <port name="value" type="float" value="12.0"/>
        </node>
        <node name="positioned" position="4.00,12.00" prototype="core.network" renderedChild="thing">
            <node name="add1" position="0.00,6.00" prototype="math.add"/>
            <node name="frame1" position="-3.00,4.00" prototype="core.frame"/>
            <node name="make_point1" position="0.00,10.00" prototype="corevector.make_point"/>
            <node name="mod1" position="-3.00,8.00" prototype="math.mod"/>
            <node name="random_numbers1" position="4.00,7.00" prototype="math.random_numbers">
                <port name="amount" type="int" value="1"/>
                <port name="start" type="float" value="1.0"/>
                <port name="end" type="float" value="15.0"/>
            </node>
            <node name="random_numbers2" position="4.00,9.00" prototype="math.random_numbers">
                <port name="amount" type="int" value="1"/>
                <port name="start" type="float" value="40.0"/>
                <port name="end" type="float" value="150.0"/>
            </node>
            <node name="thing" position="-3.00,12.00" prototype="core.network" renderedChild="translate1">
                <node name="add1" position="-3.00,3.00" prototype="math.add"/>
                <node name="align1" position="0.00,12.00" prototype="corevector.align">
                    <port name="halign" type="string" value="right"/>
                </node>
                <node name="color1" position="6.00,3.00" prototype="color.color">
                    <port name="color" type="color" value="#ff0000ff"/>
                </node>
                <node name="color2" position="6.00,4.00" prototype="color.color">
                    <port name="color" type="color" value="#b70000ff"/>
                </node>
                <node name="color3" position="6.00,5.00" prototype="color.color">
                    <port name="color" type="color" value="#5e0000ff"/>
                </node>
                <node name="colorize1" position="0.00,10.00" prototype="corevector.colorize"/>
                <node name="combine1" position="4.00,7.00" prototype="list.combine"/>
                <node name="copy1" position="0.00,13.00" prototype="corevector.copy">
                    <port name="copies" type="int" value="12"/>
                    <port name="rotate" type="float" value="30.0"/>
                </node>
                <node name="divide1" position="0.00,3.00" prototype="math.divide">
                    <port name="value2" type="float" value="2.0"/>
                </node>
                <node name="ellipse1" position="0.00,9.00" prototype="corevector.ellipse"/>
                <node name="frame1" position="-4.00,1.00" prototype="core.frame"/>
                <node name="group1" position="0.00,11.00" prototype="corevector.group"/>
                <node name="make_point1" position="0.00,7.00" prototype="corevector.make_point"/>
                <node name="multiply1" position="3.00,3.00" prototype="math.multiply">
                    <port name="value2" type="float" value="3.0"/>
                </node>
                <node name="range1" position="-1.00,1.00" prototype="math.range">
                    <port name="end" type="float" value="50.0"/>
                </node>
                <node name="repeat1" position="4.00,8.00" prototype="list.repeat">
                    <port name="amount" type="int" value="10"/>
                    <port name="per_item" type="boolean" value="true"/>
                </node>
                <node name="scale1" position="0.00,14.00" prototype="corevector.scale"/>
                <node name="sort1" position="4.00,9.00" prototype="list.sort">
                    <port name="key" type="string" value="hue"/>
                </node>
                <node name="translate1" position="0.00,15.00" prototype="corevector.translate"/>
                <node name="wave1" position="-4.00,5.00" prototype="math.wave">
                    <port name="min" type="float" value="-100.0"/>
                    <port name="period" type="float" value="80.0"/>
                </node>
                <port childReference="translate1.translate" description="The amount of translation." label="" name="translate" range="value" type="point" value="0.00,0.00" widget="point"/>
                <port childReference="repeat1.amount" description="The amount of times to repeat the list." label="" name="coloramount" range="value" type="int" value="10" widget="int"/>
                <port childReference="wave1.period" description="" label="" name="wavespeed" range="value" type="float" value="80.0" widget="float"/>
                <port childReference="multiply1.value2" description="" label="" name="speed" range="value" type="float" value="3.0" widget="float"/>
                <conn input="add1.value1" output="frame1"/>
                <conn input="add1.value2" output="range1"/>
                <conn input="wave1.offset" output="add1"/>
                <conn input="divide1.value1" output="range1"/>
                <conn input="multiply1.value1" output="range1"/>
                <conn input="make_point1.y" output="wave1"/>
                <conn input="make_point1.x" output="multiply1"/>
                <conn input="ellipse1.position" output="make_point1"/>
                <conn input="ellipse1.width" output="divide1"/>
                <conn input="ellipse1.height" output="divide1"/>
                <conn input="repeat1.list" output="combine1"/>
                <conn input="sort1.list" output="repeat1"/>
                <conn input="colorize1.shape" output="ellipse1"/>
                <conn input="colorize1.fill" output="sort1"/>
                <conn input="combine1.list1" output="color3"/>
                <conn input="combine1.list2" output="color2"/>
                <conn input="combine1.list3" output="color1"/>
                <conn input="group1.shapes" output="colorize1"/>
                <conn input="align1.shape" output="group1"/>
                <conn input="copy1.shape" output="align1"/>
                <conn input="scale1.shape" output="copy1"/>
                <conn input="translate1.shape" output="scale1"/>
            </node>
            <port childReference="make_point1.x" description="The X position of the point." label="" name="x" range="value" type="float" value="0.0" widget="float"/>
            <port childReference="add1.value2" description="" label="" name="Y" range="value" type="float" value="0.0" widget="float"/>
            <port childReference="random_numbers1.seed" description="" label="" name="seedcolor" range="value" type="int" value="0" widget="int"/>
            <port childReference="random_numbers2.seed" description="" label="" name="seedwave" range="value" type="int" value="0" widget="int"/>
            <port childReference="thing.speed" description="" label="" name="speed" range="value" type="float" value="3.0" widget="float"/>
            <conn input="add1.value1" output="frame1"/>
            <conn input="mod1.value1" output="add1"/>
            <conn input="thing.translate" output="make_point1"/>
            <conn input="make_point1.y" output="mod1"/>
            <conn input="thing.coloramount" output="random_numbers1"/>
            <conn input="thing.wavespeed" output="random_numbers2"/>
        </node>
        <node name="random_numbers1" position="0.00,8.00" prototype="math.random_numbers">
            <port name="start" type="float" value="50.0"/>
            <port name="end" type="float" value="500.0"/>
            <port name="seed" type="int" value="2"/>
        </node>
        <node name="random_numbers2" position="4.00,8.00" prototype="math.random_numbers">
            <port name="end" type="float" value="400.0"/>
            <port name="seed" type="int" value="1"/>
        </node>
        <node name="range1" position="8.00,10.00" prototype="math.range"/>
        <node name="rect1" position="0.00,14.00" prototype="corevector.rect">
            <port name="width" type="float" value="1000.0"/>
            <port name="height" type="float" value="1000.0"/>
        </node>
        <node name="rotate1" position="4.00,14.00" prototype="corevector.rotate">
            <port name="angle" type="float" value="90.0"/>
            <port name="origin" type="point" value="142.00,-141.00"/>
        </node>
        <conn input="random_numbers1.amount" output="number1"/>
        <conn input="random_numbers2.amount" output="number1"/>
        <conn input="positioned.Y" output="random_numbers2"/>
        <conn input="range1.end" output="number1"/>
        <conn input="positioned.seedcolor" output="range1"/>
        <conn input="rotate1.shape" output="positioned"/>
        <conn input="combine1.list1" output="rect1"/>
        <conn input="combine1.list2" output="rotate1"/>
        <conn input="positioned.x" output="random_numbers1"/>
        <conn input="positioned.seedwave" output="random_numbers1"/>
    </node>
</ndbx>
