<?xml version="1.0" encoding="utf-8"?>
<WorkflowBuilder Version="2.9.0"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xmlns:wie="clr-namespace:Bonsai.Windows.Input;assembly=Bonsai.Windows.Input"
                 xmlns:beh="clr-namespace:Harp.Behavior;assembly=Harp.Behavior"
                 xmlns:harp="clr-namespace:Bonsai.Harp;assembly=Bonsai.Harp"
                 xmlns:rx="clr-namespace:Bonsai.Reactive;assembly=Bonsai.Core"
                 xmlns="https://bonsai-rx.org/2018/workflow">
  <Workflow>
    <Nodes>
      <Expression xsi:type="Combinator">
        <Combinator xsi:type="wie:KeyDown">
          <wie:Filter>F</wie:Filter>
          <wie:SuppressRepetitions>false</wie:SuppressRepetitions>
        </Combinator>
      </Expression>
      <Expression xsi:type="beh:CreateMessage">
        <harp:MessageType>Write</harp:MessageType>
        <harp:Payload xsi:type="beh:CreatePulseSupplyPort0Payload">
          <beh:PulseSupplyPort0>15</beh:PulseSupplyPort0>
        </harp:Payload>
      </Expression>
      <Expression xsi:type="MulticastSubject">
        <Name>Behavior Commands</Name>
      </Expression>
      <Expression xsi:type="SubscribeSubject">
        <Name>Behavior Events</Name>
      </Expression>
      <Expression xsi:type="beh:Parse">
        <harp:Register xsi:type="beh:DigitalInputState" />
      </Expression>
      <Expression xsi:type="HasFlag">
        <Operand xsi:type="WorkflowProperty" TypeArguments="beh:DigitalInputs">
          <Value>DIPort0</Value>
        </Operand>
      </Expression>
      <Expression xsi:type="rx:Condition">
        <Workflow>
          <Nodes>
            <Expression xsi:type="WorkflowInput">
              <Name>Source1</Name>
            </Expression>
            <Expression xsi:type="WorkflowOutput" />
          </Nodes>
          <Edges>
            <Edge From="0" To="1" Label="Source1" />
          </Edges>
        </Workflow>
      </Expression>
      <Expression xsi:type="beh:CreateMessage">
        <harp:MessageType>Write</harp:MessageType>
        <harp:Payload xsi:type="beh:CreateOutputSetPayload">
          <beh:OutputSet>SupplyPort0</beh:OutputSet>
        </harp:Payload>
      </Expression>
      <Expression xsi:type="MulticastSubject">
        <Name>Behavior Commands</Name>
      </Expression>
    </Nodes>
    <Edges>
      <Edge From="0" To="1" Label="Source1" />
      <Edge From="1" To="2" Label="Source1" />
      <Edge From="3" To="4" Label="Source1" />
      <Edge From="4" To="5" Label="Source1" />
      <Edge From="5" To="6" Label="Source1" />
      <Edge From="6" To="7" Label="Source1" />
      <Edge From="7" To="8" Label="Source1" />
    </Edges>
  </Workflow>
</WorkflowBuilder>
