<instrument type='blue.orchestra.BlueSynthBuilder' editEnabled='true'>
  <name>2Mod4 1/2</name>
  <comment>
2Mod4 1/2 consists of 2 Low Frequency Modulators, where Modulator 2 works on Modulator 1. Modulator 2 can be set to OFF. 
Several wave types can be selected. The 7th wave type allows to quickly set the this Modulator to a steady signal- some kind of &quot;pause&quot; if you will. 
All can be changed in realtime.
The 2 Modulators can be mixed and so more complex wave patterns occur.

2Mod4 1/2 is the first part of 2; here, the 4 outputs can be switched on, while 2Mod4 2/2 splits these 4 outputs into one in phase, and another that is out of phase.
As the phase and out of phase modulators do follow the same modulation values, the out of phase one can get its own offset.

This Instrument has 4 possible outputs.
1. ADD             -   both modulators added together, or Modulator1 only
2. MAX             -   both modulators added together but only the maximal values are given             
3. MIN             -   both modulators added together but only the minimal values are given 
4. MULT            -   both modulators multiplied. For this to happen, both Modulators needs to be activated.

Some extra coding inside the target Instrument is needed. 2Mod4 2/2 produces k-rate modulations, (or when resolution is set, at a-rate) but if i-rate is needed, a conversion
inside the target instrument must be implemented.
Scaling must be done in the target Instrument.

ALL SCALING AND ADDING AN OFFSET TO THE PRODUCED VALUES MUST BE DONE IN THE TARGET INSTRUMENT ITSELF. 
2Mod4 only produces values between -1....1. Any offset or scaling back to values between 0...1 must be done in the target Instr.

To save CPU, only select the outputs you need!

---

version 1, April 2023
- initial version</comment>
  <globalOrc/>
  <globalSco/>
  <instrumentText>
if  (&lt;Mod2ON&gt; == 0) then
    kres1   k_lfo7  &lt;Mod1 speed&gt;, &lt;Mod1 scale&gt;, &lt;Mod1 wave&gt;                     ; 1 modulator
    kres2   =   0                                                               ; mod2 shutoff
else
    kres1   k_lfo7  &lt;Mod1 speed&gt;, &lt;Mod1 scale&gt;, &lt;Mod1 wave&gt;                     ; speed modulator 2
    kres2   k_lfo7  &lt;Mod2 speed&gt;, &lt;Mod2 scale&gt;, &lt;Mod2 wave&gt;                     ; turned ON
endif    

if (&lt;addON&gt; == 1) then                                                          ; action rule 1 = adding both modulators
    kadd    =   kres1 + kres2
    chnset  kadd, &quot;ADD&quot;                                              
else
    chnset  0, &quot;ADD&quot;
endif

if (&lt;maxON&gt; == 1) then                                                          ; action rule 2 = max of both modulators
    kmax    max kres1, kres2      
    chnset  kmax, &quot;MAX&quot;                                     
else
    chnset  0, &quot;MAX&quot;
endif

if (&lt;minON&gt; == 1) then                                                          ; action rule 3 = min of both modulators 
    kmin    min kres1, kres2                                            
    chnset  kmin, &quot;MIN&quot;
else
    chnset  0, &quot;MIN&quot;
endif

if (&lt;multON&gt; == 1) then                                                         ; action rule 4 = multiply both modulators
    kmult   =   kres1 * kres2    
    chnset  kmult, &quot;MULT&quot;
else
    chnset  1, &quot;MULT&quot;
endif
</instrumentText>
  <alwaysOnInstrumentText></alwaysOnInstrumentText>
  <graphicInterface editEnabled='false'>
    <gridSettings>
      <width>5</width>
      <height>5</height>
      <gridStyle>DOT</gridStyle>
      <snapGridEnabled>true</snapGridEnabled>
    </gridSettings>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
      <objectName></objectName>
      <x>0</x>
      <y>0</y>
      <groupName>Group</groupName>
      <backgroundColor>0x00000033</backgroundColor>
      <borderColor>0x000000ff</borderColor>
      <labelTextColor>0xffffffff</labelTextColor>
      <titleEnabled>true</titleEnabled>
      <width>20</width>
      <height>20</height>
      <font>
        <name>Roboto</name>
        <size>12.0</size>
        <style>0</style>
      </font>
      <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
        <objectName></objectName>
        <x>0</x>
        <y>0</y>
        <groupName>4   O u t p u t   M o d u l a t o r</groupName>
        <backgroundColor>0x4d4d4dff</backgroundColor>
        <borderColor>0x4d1a4dff</borderColor>
        <labelTextColor>0xffffffff</labelTextColor>
        <titleEnabled>true</titleEnabled>
        <width>20</width>
        <height>20</height>
        <font>
          <name>Roboto</name>
          <size>14.0</size>
          <style>1</style>
        </font>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
          <objectName></objectName>
          <x>10</x>
          <y>10</y>
          <groupName>2channel Modulate</groupName>
          <backgroundColor>0x282828ff</backgroundColor>
          <borderColor>0x000000ff</borderColor>
          <labelTextColor>0xffffffff</labelTextColor>
          <titleEnabled>false</titleEnabled>
          <width>228</width>
          <height>100</height>
          <font>
            <name>Roboto</name>
            <size>12.0</size>
            <style>2</style>
          </font>
          <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
            <objectName></objectName>
            <x>10</x>
            <y>170</y>
            <groupName>Modulator1</groupName>
            <backgroundColor>0x3a3a3aff</backgroundColor>
            <borderColor>0x000000ff</borderColor>
            <labelTextColor>0xffffffff</labelTextColor>
            <titleEnabled>true</titleEnabled>
            <width>20</width>
            <height>20</height>
            <font>
              <name>Roboto</name>
              <size>12.0</size>
              <style>0</style>
            </font>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
              <objectName>Mod1 scale</objectName>
              <x>80</x>
              <y>10</y>
              <automationAllowed>true</automationAllowed>
              <minimum>0.0</minimum>
              <maximum>1.0</maximum>
              <value>1.0</value>
              <knobWidth>60</knobWidth>
              <randomizable>true</randomizable>
              <valueDisplayEnabled>true</valueDisplayEnabled>
              <label>scale</label>
              <labelEnabled>true</labelEnabled>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>124</x>
              <y>120</y>
              <label>7</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>108</x>
              <y>120</y>
              <label>6</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>44</x>
              <y>120</y>
              <label>2</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBHSlider' version='2'>
              <objectName>Mod1 wave</objectName>
              <x>6</x>
              <y>98</y>
              <comment>sine, triangle, square x 2, saw up, saw down </comment>
              <automationAllowed>true</automationAllowed>
              <minimum>0.0</minimum>
              <maximum>7.0</maximum>
              <bdresolution>1</bdresolution>
              <value>2.0</value>
              <sliderWidth>133</sliderWidth>
              <randomizable>true</randomizable>
              <valueDisplayEnabled>false</valueDisplayEnabled>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>76</x>
              <y>120</y>
              <label>4</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>28</x>
              <y>120</y>
              <label>1</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>92</x>
              <y>120</y>
              <label>5</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>60</x>
              <y>120</y>
              <label>3</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
              <objectName>Mod1 speed</objectName>
              <x>5</x>
              <y>10</y>
              <comment>frequency rate of vibrato</comment>
              <automationAllowed>true</automationAllowed>
              <minimum>0.0</minimum>
              <maximum>20.0</maximum>
              <value>4.251621866807291</value>
              <knobWidth>60</knobWidth>
              <randomizable>true</randomizable>
              <valueDisplayEnabled>true</valueDisplayEnabled>
              <label>speed</label>
              <labelEnabled>true</labelEnabled>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>12</x>
              <y>120</y>
              <label>0</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
          </bsbObject>
          <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
            <objectName></objectName>
            <x>10</x>
            <y>10</y>
            <groupName>Modulator2</groupName>
            <backgroundColor>0x3a3a3aff</backgroundColor>
            <borderColor>0x000000ff</borderColor>
            <labelTextColor>0xffffffff</labelTextColor>
            <titleEnabled>true</titleEnabled>
            <width>20</width>
            <height>20</height>
            <font>
              <name>Roboto</name>
              <size>12.0</size>
              <style>0</style>
            </font>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>44</x>
              <y>120</y>
              <label>2</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
              <objectName>Mod2 scale</objectName>
              <x>80</x>
              <y>10</y>
              <automationAllowed>true</automationAllowed>
              <minimum>0.0</minimum>
              <maximum>1.0</maximum>
              <value>1.0</value>
              <knobWidth>60</knobWidth>
              <randomizable>true</randomizable>
              <valueDisplayEnabled>true</valueDisplayEnabled>
              <label>scale</label>
              <labelEnabled>true</labelEnabled>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>108</x>
              <y>120</y>
              <label>6</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBCheckBox'>
              <objectName>Mod2ON</objectName>
              <x>5</x>
              <y>5</y>
              <automationAllowed>true</automationAllowed>
              <label>
</label>
              <selected>true</selected>
              <randomizable>true</randomizable>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
              <objectName>Mod2 speed</objectName>
              <x>10</x>
              <y>10</y>
              <comment>frequency rate of vibrato</comment>
              <automationAllowed>true</automationAllowed>
              <minimum>0.0</minimum>
              <maximum>20.0</maximum>
              <value>1.7579146357552078</value>
              <knobWidth>60</knobWidth>
              <randomizable>true</randomizable>
              <valueDisplayEnabled>true</valueDisplayEnabled>
              <label>speed</label>
              <labelEnabled>true</labelEnabled>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>12</x>
              <y>120</y>
              <label>0</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBHSlider' version='2'>
              <objectName>Mod2 wave</objectName>
              <x>6</x>
              <y>98</y>
              <comment>sine, triangle, square x 2, saw up, saw down </comment>
              <automationAllowed>true</automationAllowed>
              <minimum>0.0</minimum>
              <maximum>7.0</maximum>
              <bdresolution>1</bdresolution>
              <value>2.0</value>
              <sliderWidth>133</sliderWidth>
              <randomizable>true</randomizable>
              <valueDisplayEnabled>false</valueDisplayEnabled>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>60</x>
              <y>120</y>
              <label>3</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>76</x>
              <y>120</y>
              <label>4</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>92</x>
              <y>120</y>
              <label>5</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>28</x>
              <y>120</y>
              <label>1</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>124</x>
              <y>120</y>
              <label>7</label>
              <font>
                <name>Roboto</name>
                <size>14.0</size>
                <style>1</style>
              </font>
            </bsbObject>
          </bsbObject>
          <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
            <objectName></objectName>
            <x>165</x>
            <y>170</y>
            <groupName>outputs</groupName>
            <backgroundColor>0x3a3a3aff</backgroundColor>
            <borderColor>0x000000ff</borderColor>
            <labelTextColor>0xffffffff</labelTextColor>
            <titleEnabled>true</titleEnabled>
            <width>105</width>
            <height>137</height>
            <font>
              <name>Roboto</name>
              <size>12.0</size>
              <style>0</style>
            </font>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBCheckBox'>
              <objectName>addON</objectName>
              <x>24</x>
              <y>15</y>
              <automationAllowed>true</automationAllowed>
              <label>add</label>
              <selected>true</selected>
              <randomizable>true</randomizable>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBCheckBox'>
              <objectName>maxON</objectName>
              <x>24</x>
              <y>45</y>
              <automationAllowed>true</automationAllowed>
              <label>max</label>
              <selected>false</selected>
              <randomizable>true</randomizable>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBCheckBox'>
              <objectName>multON</objectName>
              <x>24</x>
              <y>105</y>
              <automationAllowed>true</automationAllowed>
              <label>multiply</label>
              <selected>false</selected>
              <randomizable>true</randomizable>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBCheckBox'>
              <objectName>minON</objectName>
              <x>24</x>
              <y>75</y>
              <automationAllowed>true</automationAllowed>
              <label>min</label>
              <selected>false</selected>
              <randomizable>true</randomizable>
            </bsbObject>
          </bsbObject>
          <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
            <objectName></objectName>
            <x>165</x>
            <y>10</y>
            <comment>Score Module - use this to add extra P-fields in Score and instrumentcode</comment>
            <groupName>Wave Type</groupName>
            <backgroundColor>0x66666600</backgroundColor>
            <borderColor>0x000000ff</borderColor>
            <labelTextColor>0xf0f0ffff</labelTextColor>
            <titleEnabled>true</titleEnabled>
            <width>103</width>
            <height>139</height>
            <font>
              <name>Roboto</name>
              <size>12.0</size>
              <style>0</style>
            </font>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>15</x>
              <y>46</y>
              <label>3</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>33</x>
              <y>90</y>
              <label>random</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>15</x>
              <y>106</y>
              <label>7</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>33</x>
              <y>120</y>
              <label>offset
</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>33</x>
              <y>75</y>
              <label>saw down</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>15</x>
              <y>60</y>
              <label>4</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>15</x>
              <y>0</y>
              <label>0</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>15</x>
              <y>120</y>
              <label>8</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>33</x>
              <y>105</y>
              <label>freeze</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>33</x>
              <y>15</y>
              <label>triangle</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>33</x>
              <y>60</y>
              <label>saw up</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>33</x>
              <y>30</y>
              <label>square</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>15</x>
              <y>15</y>
              <label>1</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>33</x>
              <y>45</y>
              <label>cosine</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>33</x>
              <y>0</y>
              <label>sine</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>15</x>
              <y>90</y>
              <label>6</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>15</x>
              <y>75</y>
              <label>5</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
            <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
              <objectName></objectName>
              <x>15</x>
              <y>30</y>
              <label>2</label>
              <font>
                <name>Roboto</name>
                <size>12.0</size>
                <style>0</style>
              </font>
            </bsbObject>
          </bsbObject>
        </bsbObject>
      </bsbObject>
    </bsbObject>
  </graphicInterface>
  <parameterList>
    <parameter uniqueId='-1094636621' name='Mod1 scale' label='' min='0.0' max='1.0' bdresolution='-1' automationEnabled='false' value='1.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='-1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='1.0'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636619' name='Mod1 wave' label='' min='0.0' max='7.0' bdresolution='1' automationEnabled='false' value='2.0'>
      <line name='' version='2' max='7.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='2.0'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636617' name='Mod1 speed' label='' min='0.0' max='20.0' bdresolution='-1' automationEnabled='false' value='4.251621866807291'>
      <line name='' version='2' max='20.0' min='0.0' bdresolution='-1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='4.251621866807291'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636615' name='Mod2 scale' label='' min='0.0' max='1.0' bdresolution='-1' automationEnabled='false' value='1.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='-1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='1.0'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636613' name='Mod2ON' label='' min='0.0' max='1.0' bdresolution='1' automationEnabled='false' value='1.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='1.0'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636611' name='Mod2 speed' label='' min='0.0' max='20.0' bdresolution='-1' automationEnabled='false' value='1.7579146357552078'>
      <line name='' version='2' max='20.0' min='0.0' bdresolution='-1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='1.7579146357552078'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636609' name='Mod2 wave' label='' min='0.0' max='7.0' bdresolution='1' automationEnabled='false' value='2.0'>
      <line name='' version='2' max='7.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='2.0'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636607' name='addON' label='' min='0.0' max='1.0' bdresolution='1' automationEnabled='false' value='1.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='1.0'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636605' name='maxON' label='' min='0.0' max='1.0' bdresolution='1' automationEnabled='false' value='0.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.0'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636603' name='multON' label='' min='0.0' max='1.0' bdresolution='1' automationEnabled='false' value='0.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.0'/>
      </line>
    </parameter>
    <parameter uniqueId='-1094636601' name='minON' label='' min='0.0' max='1.0' bdresolution='1' automationEnabled='false' value='0.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.0'/>
      </line>
    </parameter>
  </parameterList>
  <presetGroup name='Presets'/>
  <opcodeList>
    <udo>
      <opcodeName>k_lfo7</opcodeName>
      <outTypes>k</outTypes>
      <inTypes>kkk</inTypes>
      <codeBody>kcps, kdepth, ktype xin

iSineTable	chnget	&quot;lfo2_sine&quot;

if (iSineTable == 0) then
	iSineTable	ftgen 	0, 0, 65536, 10, 1 ; sine wave
	chnset	iSineTable, &quot;lfo2_sine&quot;
endif

kout init 0

if (ktype == 0) then                                                            ;SINE
	kout 	oscil3 kdepth, kcps, iSineTable

elseif (ktype == 1) then                                                        ;TRIANGLE
	aout	vco2 kdepth, kcps, 12
	kout downsamp aout

elseif (ktype == 2) then                                                        ;SQUARE (BI-POLAR)
	aout	vco2 kdepth, kcps, 10
	kout downsamp aout

elseif (ktype == 3) then                                                        ;COSINE
	kout 	oscil3 kdepth, kcps, iSineTable, .25

elseif (ktype == 4) then                                                        ;SAW TOOTH (UP)
	aout	vco2 kdepth, kcps, 0
	kout downsamp aout	
        kout = kout * -1

elseif (ktype == 5) then                                                        ;SAW TOOTH (DOWN)
	aout	vco2 kdepth, kcps, 0
	kout downsamp aout

elseif (ktype == 6) then                                                        ;RANDOM
        kout jspline kdepth, kcps, 2                                            ;jitter

elseif (ktype == 7) then                                                        ;FREEZE
        ; empty
endif

xout kout</codeBody>
      <comments></comments>
    </udo>
  </opcodeList>
</instrument>