public override void Execute() { var p = _inPort.Receive(); if (p != null) { if (p.Content is bool b) { if (_truePort.IsConnected()) { if (b) { _truePort.Send(p); } else { _truePort.Close(); } } else if (_falsePort.IsConnected()) { if (!b) { _falsePort.Send(p); } else { _falsePort.Close(); } } else { Drop(p); } } else { Drop(p); FlowError.Complain("Expected IP to be a boolean value. Got: " + p.Content.GetType()); } } }