Writing an HLT2 line

An HLT line is a sequence of steps that collectively define whether an event contains an object of interest which should be kept for later analysis. This object is typically a reconstructed candidate physics process, such as an exclusive particle decay.

This page will walk you through defining an HLT2 line step by step. We’ll reconstruct candidate \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \pi^{-}\) and \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \mu^{-} \bar{\nu}_{\mu}\) decays with \(\Lambda_{c}^{+} \to p K^{-} \pi^{+}\), explaining the details of how to encode this within Moore.

To follow along, it’s expected that you have a development setup built and ready to go.

File structure

Each HLT2 line is defined by a single small Python function, a ‘line definition’. Line definitions for HLT2 live in files under this directory in the Moore project:

Hlt/Hlt2Conf/python/Hlt2Conf/lines

First look there to get a sense of how things are structured. Some files are further organised into sub-folders. For us, we can just create a file directly under lines:

touch Hlt/Hlt2Conf/python/Hlt2Conf/lines/hlt2_line_tutorial.py

Open the newly-created file in your text editor of choice.

A possible final result also exists already as:

Hlt/Hlt2Conf/python/Hlt2Conf/lines/hlt2_line_example.py

It can be run with:

Moore/run gaudirun.py '$HLT2CONFROOT/options/run_hlt2_line_example.py'

Prototyping

We focus first on the \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \pi^{-}\) with \(\Lambda_{c}^{+} \to p K^{-} \pi^{+}\) and add the \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \mu^{-} \bar{\nu}_{\mu}\) decay later to highlight certain aspects of the framework.

Think about how you would reconstruct/make candidates for our decays of interest. This is always the first step before writing any code. How could we do it?

  1. Reconstruct and filter/select protons, kaons, pions. They are the basic building blocks for this module.

  2. Reconstruct \(\Lambda_{c}^{+} \to p K^{-} \pi^{+}\) candidates.

  3. Reconstruct pion candidates needed for the \(\Lambda_{b}^{0}\) candidates.

  4. Reconstruct \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \pi^{-}\) candidates.

Each (sub-)step, like ‘reconstruct and filter proton’, and ‘reconstruct \(\Lambda_{c}^{+}\)’, represents the running of an algorithm, a C++ component defined within the LHCb selection framework. We want to configure these algorithms, so they behave in a way that creates the candidates we want. We have consolidated the reconstruction and filtering sub-steps to define module-specific input particles. Those could also be common to your working-group or the entire experiment, in which case they would be imported from a shared module.

But there is one step missing here, which historically has been implicit: reconstruct primary vertex (PV) candidates! These are necessary if we want to cut on quantities related to PVs such as the impact parameter and flight distance.

So, let’s outline a function that does these steps:

def lb0_to_lcpim_line():
    pvs = make_pvs()
    protons = protons_for_charm()
    kaons = kaons_for_charm()
    pions = pions_for_charm_and_beauty()
    lcs = make_lambdacs(protons, kaons, pions, pvs)
    lbs = make_lambdabs(lcs, pions, pvs)

    return lbs

This is a step-by-step encoding of what we want our line to do. Of course, this version doesn’t run yet because we haven’t defined the various make_ and h_for_charm functions yet, and it’s not clear what will happen to the return value lbs, but this function is already very close to what our final function will look like.

Note

We ‘skipped’ step 3 in our outline because we’ll assume that for this line the pions used for the \(\Lambda_{c}^{+}\) also meet our criteria for \(\Lambda_{b}^{0}\) pions.

What would our function look like if this wasn’t the case?

There are just a few changes we need to make to our file and function to be consistent with what Moore expects.

  1. Return an object that Moore understands from the function.

  2. Define a ‘line registry’ object that will hold all the lines defined within this file/module. Moore will expect this object to be present, and will use it to discover all lines it should run.

  3. Add our line definition function to this registry.

Line declaration

The first step means returning a Moore.lines.Hlt2Line object. This contains some metadata about the information that Moore will use, such as a name, in addition to the control flow defining the line. Let’s return that object first and then discuss it:

from Moore.lines import Hlt2Line

def lb0_to_lcpim_line(name="Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip", prescale=1):
    pvs = make_pvs()
    protons = protons_for_charm()
    kaons = kaons_for_charm()
    pions = pions_for_charm_and_beauty()
    lcs = make_lambdacs(protons, kaons, pions, pvs)
    lbs = make_lambdabs(lcs, pions, pvs)

    return Hlt2Line(
        name=name,
        algs=[lbs],
        prescale=prescale,
     )

There are three new things going on:

  1. The Moore.lines.Hlt2Line object needs to be created with a name, so we’ve parametrised this as a function argument, with a default value, and passed it to Moore.lines.Hlt2Line.

  2. The Moore.lines.Hlt2Line object can be created with a prescale, so we’ve parametrised this similarly as for the name.

  3. Finally, we defined the control flow of the line as the algs parameter of Moore.lines.Hlt2Line. The control flow specifies how Moore should evaluate whether this line made a positive decision or not. The filters of a line are executed in the order defined by the control flow, and the execution of a line is aborted if a filter fails. The control flow order can be used to optimize the execution time of a line. For our line, the decision is decided solely by the presence of \(\Lambda_{b}^{0}\) candidates: if we created a non-zero number of \(\Lambda_{b}^{0}\) candidates, this line should be considered as having ‘passed’ (also called ‘fired’).

Parametrising the function in the way we have allows for two things:

  1. For development purposes we can easily create multiple lines with different names, prescales just by calling the function with different arguments. Of course, we are free to add further arguments, like cut values. We’ll see later how to run multiple instances of the line with different cuts.

  2. For bookkeeping purposes, we will decorate the function. The decorator expects the name argument to register the line.

Tip

How should you decide what name to give your line? The conventions are outlined among the best practices below, Moore#60 , or your WG might provide a dedicated naming scheme. If you’re still unsure, just open your merge request and someone will make suggestions.

Control and data flow

We didn’t need to specify that the other algorithms should run, like the creation of the \(\Lambda_{c}^{+}\) candidate. Why is this? It’s because Moore makes the distinction between control flow and data flow.

Control flow defines whether decisions are positive (passed) or negative (failed). The control flow may, for example, specify that several algorithms should be run and that the decision should be positive if at least one algorithm reports as passing.

The data flow defines which inputs are necessary to create a given output. In order to evaluate the control flow in our line, Moore needs to run the \(\Lambda_{b}^{0}\) making algorithm. Before doing that it will automatically deduce what other algorithms it needs to run in order to satisfy the inputs to the \(\Lambda_{b}^{0}\) algorithm. One input is the output of the \(\Lambda_{c}^{+}\) algorithm, and Moore will likewise automatically deduce what algorithms need to run to produce the required inputs (that is: the proton, kaon, and pion makers). This automatic data flow resolution goes all the way up through the reconstruction to the raw event.

We could choose to impose additional requirements on the control flow if it makes physics sense for our line. For example:

  1. At least one PV must be present in the event; or

  2. Intermediate selection steps.

Because we already have a PV making algorithm in our prototype, we could include this in our control flow already. Including the \(\Lambda_{c}^{+}\) selection in our case won’t have any effect, as we chose to use the exact same pion candidates for the \(\Lambda_{c}^{+}\) and \(\Lambda_{b}^{0}\) selections. For our semileptonic decay however, we could add the muons to the control flow.

from RecoConf.event_filters import require_pvs


    return Hlt2Line(
        name=name,
        algs=[require_pvs(pvs), muons, lbs],
        prescale=prescale,
     )

Moore will define the control flow for this line to be:

“First require the pvs algorithm to pass, then require the muons algorithm to pass, and finally require the lbs algorithm to pass; if all pass then the line decision is positive.”

Note

The entries in our algs list define the entries in a single control flow node. This node has a ‘logic’ of ‘lazy and’. All possible node logics are defined by PyConf.control_flow.NodeLogic.

The total HLT2 decision is defined by a control flow node containing each individual line’s node, with a logic of ‘non-lazy or’. Most line authors don’t have to worry about the different types.

Line registration

The last two steps we need to make to our prototype function are rather straightforward. The line registry object is just a Python dictionary, and this is populated by using the Python decorator syntax with the Moore.config.register_line_builder helper:

from Moore.config import register_line_builder
from Moore.lines import Hlt2Line
from RecoConf.legacy_rec_hlt1_tracking import require_pvs

all_lines = {}

@register_line_builder(all_lines)
def lb0_to_lcpim_line(name="Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip", prescale=1):
    pvs = make_pvs()
    protons = protons_for_charm()
    kaons = kaons_for_charm()
    pions = pions_for_charm_and_beauty()
    lcs = make_lambdacs(protons, kaons, pions, pvs)
    lbs = make_lambdabs(lcs, pions, pvs)

    return Hlt2Line(
        name=name,
        algs=[require_pvs(pvs), lbs],
        prescale=prescale,
     )

The decorator just adds the line function to the dictionary. We’ll see later how this dictionary is used to run the line.

Note

It’s now worth taking a step back to look at the function we’ve written, because this contains all the core ideas we’ll need. All other HLT2 lines you’ll see look very similar to what we have now.

Standard objects

In HLT2, several maker functions are already defined for general usage. These ‘standard makers’ take the output of the reconstruction and make objects common to many HLT2 lines. These standard makers produce objects such as:

  • Charged tracks with predefined mass hypotheses and associated PID objects

  • Neutral objects such as photons and neutral pions

  • Composite objects, representing candidate particle decays, such as \(J/\psi \to \mu^{+} \mu^{-}\) and \(\Lambda^{0} \to p \pi^{-}\).

Before writing your own maker, you should always first browse the list of standard makers to see if something already exists that suits your needs. Having all HLT2 lines re-use the same makers reduces the number of unique algorithms that Moore has to run, reducing the total time-per-event.

For our use case, we can see there are already makers we can use for charged non-composite inputs:

We’ve chosen the has_rich variant because in this example we will apply PID cuts to all non-composite particles, so it makes sense to first require that the objects have passed the requirements needed to assign PID likelihood values.

Primary vertices are also part of the set of standard objects, produced by the make_pvs function.

Given this information, we can flesh out our function a bit more:

from Moore.config import register_line_builder
from Moore.lines import Hlt2Line
from RecoConf.legacy_rec_hlt1_tracking import require_pvs

from ..standard_particles import (
    make_has_rich_long_kaons,
    make_has_rich_long_pions,
    make_has_rich_long_protons,
)
from RecoConf.reconstruction_objects import make_pvs

all_lines = {}

@register_line_builder(all_lines)
def lb0_to_lcpim_line(name="Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip", prescale=1):
    pvs = make_pvs()
    protons = protons_for_charm()
    kaons = kaons_for_charm()
    pions = pions_for_charm_and_beauty()
    lcs = make_lambdacs(protons, kaons, pions, pvs)
    lbs = make_lambdabs(lcs, pions, pvs)

    return Hlt2Line(
        name=name,
        algs=[require_pvs(pvs), lbs],
        prescale=prescale,
     )

Note

The functions to create reconstruction objects like PVs, tracks or protoparticles should only be imported from the module RecoConf.reconstruction_objects. More explanation can be found in the tutorial Enable real-time reconstruction.

Filters and combiners

We’re nearly there! What’s left is to define the various h_for_charm and make_ placeholders.

Think about what these functions should do. They need to take input, as we’ve written it in our prototype, configure the correct type of algorithm, and then return something. We’ll be using selection algorithms which use ThOr functors.

Let’s start with the basic building blocks of our module h_for_charm:

from GaudiKernel.SystemOfUnits import GeV
import Functors as F

from ..algorithms_thor import ParticleFilter


def protons_for_charm():
    pvs = make_pvs()
    cut = F.require_all(
        F.PT > 0.5 * GeV,
        F.MINIPCHI2(pvs) > 9.,
        F.PID_P > 5.,
    )
    return ParticleFilter(make_has_rich_long_protons(), F.FILTER(cut))

We’ve used the require_all helper to define the cut expression here.

Note

The function has no arguments. This is on purpose for production-ready selections. In this way we have re-defined a custom basic building block for our lines.

The return value is the configured algorithm. This can be used as an ‘input’ to other algorithms as the framework knows how to extract the (single) output the Hlt2Conf.algorithms_thor.ParticleFilter algorithm produces.

Define similar functions for the remaining particle filters, for kaons and for pions.

Next is a function which combines its input to a composite \(\Lambda_{c}^{+}\) candidate:

from Functors.math import in_range
from GaudiKernel.SystemOfUnits import (GeV, MeV, mm)

from ..algorithms_thor import ParticleCombiner

def make_lambdacs_for_beauty(protons, kaons, pions, pvs):
    two_body_combination_code = F.require_all(
        F.MAXDOCACHI2CUT(9.), F.MAXDOCACUT(0.1 * mm))
    combination_code = F.require_all(
        in_range(2080 * MeV, F.MASS, 2480 * MeV),  # mass of the combination
        F.PT > 1.4 * GeV,  # pT of the 3-track combination
        F.SUM(F.PT) > 2 * GeV,
        F.MAXDOCACHI2CUT(9.),
        F.MAXDOCACUT(0.1 * mm),
    )
    vertex_code = F.require_all(
        in_range(2100 * MeV, F.MASS, 2460 * MeV),  # mass after the vertex fit
        F.PT > 1.6 * GeV,  # pT after the vertex fit
        F.CHI2DOF < 10.,
        F.BPVFDCHI2(pvs) > 25.,
    )
    return ParticleCombiner(
        [protons, kaons, pions],
        DecayDescriptor="[Lambda_c+ -> p+ K- pi+]cc",
        name="Tutorial_Lcp_Combiner",
        Combination12Cut=two_body_combination_code,
        CombinationCut=combination_code,
        CompositeCut=vertex_code,
    )

The concepts here follow on from the protons_for_charm example. However, this combiner is not written as a basic building block of our selection, so that we pass reconstructed objects as positional arguments to make the data-flow explicit in the function using this combiner.

Combiners are always instances of ParticleCombiner, and length of the input list determines whether a 2-, 3- or 4-body combiner is called on the C++ side. There is detailed documentation for combiners in our codebase. Most notably for the configuration are:

  1. The order of particles in the decay descriptor and the input list must be the same; there is no mix and match unlike Run2!

  2. Another change w.r.t. Run2 is that particles of the same type are passed explicitly ([pi, pi, pi], DecayDescriptor="[D+ -> pi+ pi+ pi-]cc",)

  3. Multiple child particles with the same ID must be grouped together (D+ -> pi+ pi+ pi- is good, D+ -> pi+ pi- pi+ is forbidden).

  4. For performance purposes, the algorithm logic assumes that the rarest children are listed first in the decay descriptor. In case you are unsure what is rarest, checking counters in the log file can help.

Note

When adding the line for \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \mu^{-} \bar{\nu}_{\mu}\), we may choose to use the same make_lambdacs_for_beauty function to build \(\Lambda_{c}^{+}\) candidates as in the hadronic decay. If this function is also called with the exact same inputs (protons_for_charm, kaons_for_charm, pions_for_charm_and_beauty) the combiner will run only once; Because the configuration framework resolves two identically-configured algorithms to the same underlying object. This is an important point for optimization and will be discussed at several stages of this tutorial.

On the other hand this means, that if you change a cut slightly in one of the combiners or its inputs, another instance of the algorithm is created and work is (almost) doubled.

Finally, can define a maker function for the \(\Lambda_{b}^{0}\) candidates based on what we have learned so far.

Running

We now have a first prototype for a line selecting \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \pi^{-}\) decays. The remaining piece is an options file that configures Moore with our line maker function. You can place this in a file called test_line.py in your working directory.

test_line.py
from Moore import options, run_moore
from Hlt2Conf.lines.hlt2_line_tutorial import lb0_to_lcpim_line
from RecoConf.global_tools import stateProvider_with_simplified_geom


def all_lines():
    return [lb0_to_lcpim_line()]

public_tools = [stateProvider_with_simplified_geom()]

options.set_input_and_conds_from_testfiledb('Upgrade_MinBias_LDST')
options.input_raw_format = 4.3
options.evt_max = 100

run_moore(options, all_lines, public_tools)

Most of the pieces we’ve used here are explained in the Running Moore page. All we’ve done is tell Moore to run with its default configuration, using our line definition function to create the only line that it should run, and defined an input to use from the test file database.

The cache in the TrackStateProvider is not compatible with the new scheduler used by Moore as it relies on incidents for clearing. Until a final solution is implemented, a temporary workaround has been put in place, which is activated by stateProvider_with_simplified_geom. See LHCBPS-1835 and Rec!1584 for more details.

Moore needs to know the input file when running, so we’ll just an Upgrade minimum bias input data options file that comes with Moore:

./Moore/run gaudirun.py '$MOOREROOT/tests/options/default_input_and_conds_hlt2.py' test_line.py 2>&1 | tee logs/test_line.log

With any luck this will run, but it will soon fail with an error.

Upfront reconstruction

The example we’ve made will run, but upon inspecting the logfile you’ll notice that no candidates are produced by any algorithm.

This is because the HLT2 reconstruction is not fully defined in a way that allows us to use it with our example as-is. Instead, we need to modify our line definition only slightly to explicitly create the reconstruction before we start building our candidate:

from RecoConf.reconstruction_objects import upfront_reconstruction


@register_line_builder(all_lines)
def lb0_to_lcpim_line(name="Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip", prescale=1):


    return Hlt2Line(
        name=name,
        algs=upfront_reconstruction() + [require_pvs(pvs), lbs],
        prescale=prescale,
     )

This is just a temporary measure until the full HLT2 reconstruction is defined in Moore. You should include it for now.

Re-running

Run again and you’ll see the command complete successfully. Look at the log and see how many candidates were created. Seeing as we’re running over minimum bias data, you should expect to see very few candidates (ideally zero).

Hint

You can now also add the line for the \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \mu^{-} \bar{\nu}_{\mu}\).

What differences do you see in the log files?

Use the instructions in Analysing the output section to find the commands for generating and inspecting the control and data flow graphs that are produced when the options were run. The data flow for our example looks like this:

strict digraph "Data flow" {
label="Data flow generated at Mon Apr 08 09:58:08 2024";
rankdir=LR;
node [shape=box];
subgraph "cluster_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler" {
bgcolor=aliceblue;
label="";
"DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler" [label=<<B>DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler</B><BR/>AcceptFraction = 1.0<BR/>SeedName = Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipPrescaler>, shape=plaintext];
"DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler_in_ODINLocation" [fillcolor=deepskyblue1, label=ODINLocation, style=filled];
"DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler" -> "DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler_in_ODINLocation"  [minlen=0, style=invis];
}

"createODIN/Decode_ODIN_out_ODIN" -> "DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler_in_ODINLocation";
subgraph "cluster_createODIN/Decode_ODIN" {
bgcolor=aliceblue;
label="";
"createODIN/Decode_ODIN" [label=<<B>createODIN/Decode_ODIN</B><BR/>defaults-only>, shape=plaintext];
"createODIN/Decode_ODIN_in_RawBanks" [fillcolor=deepskyblue1, label=RawBanks, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_in_RawBanks"  [minlen=0, style=invis];
"createODIN/Decode_ODIN_out_ODIN" [fillcolor=coral1, label=ODIN, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_out_ODIN"  [minlen=0, style=invis];
}

"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" -> "createODIN/Decode_ODIN_in_RawBanks";
subgraph "cluster_LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" {
bgcolor=aliceblue;
label="";
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" [label=<<B>LHCb::UnpackRawEvent/UnpackRawEvent_ODIN</B><BR/>BankTypes = [&#x27;ODIN&#x27;]<BR/>RawBankLocations = /Event/RawBanks/ODIN>, shape=plaintext];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation" [fillcolor=deepskyblue1, label=RawEventLocation, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation"  [minlen=0, style=invis];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" [fillcolor=coral1, label=RawBankLocations, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent</B><BR/>Output = /Event/Trigger/RawEvent>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s</B><BR/>OutputName = /Event/Rec/Calo/MergedPi0s>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_MergedPi0s_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_MergedPi0s" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_MergedPi0s" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_MergedPi0s</B><BR/>Output = /Event/pRec/Calo/MergedPi0s>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_MergedPi0s_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_MergedPi0s" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_MergedPi0s_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons</B><BR/>OutputName = /Event/Rec/Calo/SplitPhotons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_SplitPhotons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_SplitPhotons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_SplitPhotons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_SplitPhotons</B><BR/>Output = /Event/pRec/Calo/SplitPhotons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_SplitPhotons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_SplitPhotons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_SplitPhotons_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackTrack/Unpack__Event_Rec_Track_Best" {
bgcolor=aliceblue;
label="";
"UnpackTrack/Unpack__Event_Rec_Track_Best" [label=<<B>UnpackTrack/Unpack__Event_Rec_Track_Best</B><BR/>OutputName = /Event/Rec/Track/Best>, shape=plaintext];
"UnpackTrack/Unpack__Event_Rec_Track_Best_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackTrack/Unpack__Event_Rec_Track_Best" -> "UnpackTrack/Unpack__Event_Rec_Track_Best_in_InputName"  [minlen=0, style=invis];
"UnpackTrack/Unpack__Event_Rec_Track_Best_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackTrack/Unpack__Event_Rec_Track_Best" -> "UnpackTrack/Unpack__Event_Rec_Track_Best_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Track_Best_out_Output" -> "UnpackTrack/Unpack__Event_Rec_Track_Best_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Track_Best" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Track_Best" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Track_Best</B><BR/>Output = /Event/pRec/Track/Best>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Track_Best_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Track_Best" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Track_Best_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals</B><BR/>OutputName = /Event/Rec/ProtoP/Neutrals>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Neutrals_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Neutrals" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Neutrals" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Neutrals</B><BR/>Output = /Event/pRec/ProtoP/Neutrals>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Neutrals_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Neutrals" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Neutrals_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_VoidFilter/require_pvs" {
bgcolor=aliceblue;
label="";
"VoidFilter/require_pvs" [label=<<B>VoidFilter/require_pvs</B><BR/>Cut = ( ( SIZE_OF @ _TES(DataHandles=[DataHandle(&#x27;/Event[...]yedObjectManager&lt;Containers::hashmap&gt; &gt;&#x27;]) ) &gt; 0 )>, shape=plaintext];
"VoidFilter/require_pvs_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"VoidFilter/require_pvs" -> "VoidFilter/require_pvs_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "VoidFilter/require_pvs_in_Cut_PyConfDataDependencies";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip/pt<BR/>Bins = 80<BR/>Range = (0.0, 40000.0)<BR/>Variable = ( RHO_COORDINATE @ THREEMOMENTUM )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip/eta<BR/>Bins = 40<BR/>Range = (1.5, 5.5)<BR/>Variable = ( ETA_COORDINATE @ SLOPES )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip/m<BR/>Bins = 100<BR/>Range = (5000.0, 7000.0)<BR/>Variable = MASS>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip/vchi2<BR/>Bins = 64<BR/>Range = (0.0, 10.0)<BR/>Variable = ( VALUE_OR(Value=nan) @ _CHI2DOF )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip/ipchi2<BR/>Bins = 64<BR/>Range = (0.0, 1000.0)<BR/>Variable = IPCHI2.bind( BEST_PV.bind( _TES(DataHandles=[DataH[...]:hashmap&gt; &gt;&#x27;]), _FORWARDARGS() ), _FORWARDARGS() )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2_in_Variable_PyConfDataDependencies";
subgraph "cluster_Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates" {
bgcolor=aliceblue;
label="";
"Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates" [label=<<B>Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip/n_candidates<BR/>HistogramDef = (&#x27;Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates&#x27;, 0, 100, 100)<BR/>Variable = ( SIZE_OF @ _TES(DataHandles=[DataHandle(&#x27;/Event/T[...]rs::KeyedObjectManager&lt;Containers::hashmap&gt; &gt;&#x27;]) )>, shape=plaintext];
"Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates" -> "Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" -> "Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates_in_Variable_PyConfDataDependencies";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices";
subgraph "cluster_CopyParticles/CopyParticles_aa8e28d1" {
bgcolor=aliceblue;
label="";
"CopyParticles/CopyParticles_aa8e28d1" [label=<<B>CopyParticles/CopyParticles_aa8e28d1</B><BR/>OutputParticles = /Event/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip/Particles>, shape=plaintext];
"CopyParticles/CopyParticles_aa8e28d1_in_InputParticles" [fillcolor=deepskyblue1, label=InputParticles, style=filled];
"CopyParticles/CopyParticles_aa8e28d1" -> "CopyParticles/CopyParticles_aa8e28d1_in_InputParticles"  [minlen=0, style=invis];
"CopyParticles/CopyParticles_aa8e28d1_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"CopyParticles/CopyParticles_aa8e28d1" -> "CopyParticles/CopyParticles_aa8e28d1_out_OutputParticles"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" -> "CopyParticles/CopyParticles_aa8e28d1_in_InputParticles";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3_in_PrimaryVertices";
subgraph "cluster_FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb" {
bgcolor=aliceblue;
label="";
"FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb" [label=<<B>FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb</B><BR/>Output = /Event/Rec/Summary>, shape=plaintext];
"FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb_out_Output" [fillcolor=coral1, label=Output, style=filled];
"FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb" -> "FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler" {
bgcolor=aliceblue;
label="";
"DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler" [label=<<B>DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler</B><BR/>AcceptFraction = 1.0<BR/>SeedName = Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVPrescaler>, shape=plaintext];
"DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler_in_ODINLocation" [fillcolor=deepskyblue1, label=ODINLocation, style=filled];
"DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler" -> "DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler_in_ODINLocation"  [minlen=0, style=invis];
}

"createODIN/Decode_ODIN_out_ODIN" -> "DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler_in_ODINLocation";
subgraph "cluster_createODIN/Decode_ODIN" {
bgcolor=aliceblue;
label="";
"createODIN/Decode_ODIN" [label=<<B>createODIN/Decode_ODIN</B><BR/>defaults-only>, shape=plaintext];
"createODIN/Decode_ODIN_in_RawBanks" [fillcolor=deepskyblue1, label=RawBanks, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_in_RawBanks"  [minlen=0, style=invis];
"createODIN/Decode_ODIN_out_ODIN" [fillcolor=coral1, label=ODIN, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_out_ODIN"  [minlen=0, style=invis];
}

"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" -> "createODIN/Decode_ODIN_in_RawBanks";
subgraph "cluster_LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" {
bgcolor=aliceblue;
label="";
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" [label=<<B>LHCb::UnpackRawEvent/UnpackRawEvent_ODIN</B><BR/>BankTypes = [&#x27;ODIN&#x27;]<BR/>RawBankLocations = /Event/RawBanks/ODIN>, shape=plaintext];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation" [fillcolor=deepskyblue1, label=RawEventLocation, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation"  [minlen=0, style=invis];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" [fillcolor=coral1, label=RawBankLocations, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent</B><BR/>Output = /Event/Trigger/RawEvent>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV/pt<BR/>Bins = 80<BR/>Range = (0.0, 40000.0)<BR/>Variable = ( RHO_COORDINATE @ THREEMOMENTUM )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV/eta<BR/>Bins = 40<BR/>Range = (1.5, 5.5)<BR/>Variable = ( ETA_COORDINATE @ SLOPES )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV/m<BR/>Bins = 100<BR/>Range = (5000.0, 7000.0)<BR/>Variable = MASS>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV/vchi2<BR/>Bins = 64<BR/>Range = (0.0, 10.0)<BR/>Variable = ( VALUE_OR(Value=nan) @ _CHI2DOF )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV/ipchi2<BR/>Bins = 64<BR/>Range = (0.0, 1000.0)<BR/>Variable = IPCHI2.bind( BEST_PV.bind( _TES(DataHandles=[DataH[...]:hashmap&gt; &gt;&#x27;]), _FORWARDARGS() ), _FORWARDARGS() )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2_in_Variable_PyConfDataDependencies";
subgraph "cluster_Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates" {
bgcolor=aliceblue;
label="";
"Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates" [label=<<B>Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV/n_candidates<BR/>HistogramDef = (&#x27;Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates&#x27;, 0, 100, 100)<BR/>Variable = ( SIZE_OF @ _TES(DataHandles=[DataHandle(&#x27;/Event/T[...]rs::KeyedObjectManager&lt;Containers::hashmap&gt; &gt;&#x27;]) )>, shape=plaintext];
"Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates" -> "Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" -> "Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates_in_Variable_PyConfDataDependencies";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices";
subgraph "cluster_CopyParticles/CopyParticles_5e320ffa" {
bgcolor=aliceblue;
label="";
"CopyParticles/CopyParticles_5e320ffa" [label=<<B>CopyParticles/CopyParticles_5e320ffa</B><BR/>OutputParticles = /Event/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV/Particles>, shape=plaintext];
"CopyParticles/CopyParticles_5e320ffa_in_InputParticles" [fillcolor=deepskyblue1, label=InputParticles, style=filled];
"CopyParticles/CopyParticles_5e320ffa" -> "CopyParticles/CopyParticles_5e320ffa_in_InputParticles"  [minlen=0, style=invis];
"CopyParticles/CopyParticles_5e320ffa_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"CopyParticles/CopyParticles_5e320ffa" -> "CopyParticles/CopyParticles_5e320ffa_out_OutputParticles"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" -> "CopyParticles/CopyParticles_5e320ffa_in_InputParticles";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ mu-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_660285d2_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_652814e2_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label=<<B>ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...]) &amp; ( ( VALUE_OR(Value=nan) @ _PID_MU ) &gt; 0.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_3dad4271</B><BR/>ParticleID = muon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = ISMUON>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_3dad4271" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_3dad4271_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa_in_PrimaryVertices";
subgraph "cluster_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler" {
bgcolor=aliceblue;
label="";
"DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler" [label=<<B>DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler</B><BR/>AcceptFraction = 1.0<BR/>SeedName = Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipPrescaler>, shape=plaintext];
"DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler_in_ODINLocation" [fillcolor=deepskyblue1, label=ODINLocation, style=filled];
"DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler" -> "DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler_in_ODINLocation"  [minlen=0, style=invis];
}

"createODIN/Decode_ODIN_out_ODIN" -> "DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler_in_ODINLocation";
subgraph "cluster_createODIN/Decode_ODIN" {
bgcolor=aliceblue;
label="";
"createODIN/Decode_ODIN" [label=<<B>createODIN/Decode_ODIN</B><BR/>defaults-only>, shape=plaintext];
"createODIN/Decode_ODIN_in_RawBanks" [fillcolor=deepskyblue1, label=RawBanks, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_in_RawBanks"  [minlen=0, style=invis];
"createODIN/Decode_ODIN_out_ODIN" [fillcolor=coral1, label=ODIN, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_out_ODIN"  [minlen=0, style=invis];
}

"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" -> "createODIN/Decode_ODIN_in_RawBanks";
subgraph "cluster_LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" {
bgcolor=aliceblue;
label="";
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" [label=<<B>LHCb::UnpackRawEvent/UnpackRawEvent_ODIN</B><BR/>BankTypes = [&#x27;ODIN&#x27;]<BR/>RawBankLocations = /Event/RawBanks/ODIN>, shape=plaintext];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation" [fillcolor=deepskyblue1, label=RawEventLocation, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation"  [minlen=0, style=invis];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" [fillcolor=coral1, label=RawBankLocations, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent</B><BR/>Output = /Event/Trigger/RawEvent>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ pi-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip/pt<BR/>Bins = 80<BR/>Range = (0.0, 40000.0)<BR/>Variable = ( RHO_COORDINATE @ THREEMOMENTUM )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ pi-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip/eta<BR/>Bins = 40<BR/>Range = (1.5, 5.5)<BR/>Variable = ( ETA_COORDINATE @ SLOPES )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ pi-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip/m<BR/>Bins = 100<BR/>Range = (5000.0, 7000.0)<BR/>Variable = MASS>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ pi-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip/vchi2<BR/>Bins = 64<BR/>Range = (0.0, 10.0)<BR/>Variable = ( VALUE_OR(Value=nan) @ _CHI2DOF )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ pi-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices";
subgraph "cluster_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2" {
bgcolor=aliceblue;
label="";
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2" [label=<<B>Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip/ipchi2<BR/>Bins = 64<BR/>Range = (0.0, 1000.0)<BR/>Variable = IPCHI2.bind( BEST_PV.bind( _TES(DataHandles=[DataH[...]:hashmap&gt; &gt;&#x27;]), _FORWARDARGS() ), _FORWARDARGS() )>, shape=plaintext];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2_in_Input"  [minlen=0, style=invis];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2_in_Input";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ pi-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2_in_Variable_PyConfDataDependencies";
subgraph "cluster_Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates" {
bgcolor=aliceblue;
label="";
"Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates" [label=<<B>Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates</B><BR/>HistogramName = /Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip/n_candidates<BR/>HistogramDef = (&#x27;Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates&#x27;, 0, 100, 100)<BR/>Variable = ( SIZE_OF @ _TES(DataHandles=[DataHandle(&#x27;/Event/T[...]rs::KeyedObjectManager&lt;Containers::hashmap&gt; &gt;&#x27;]) )>, shape=plaintext];
"Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates_in_Variable_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Variable_PyConfDataDependencies, style=filled];
"Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates" -> "Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates_in_Variable_PyConfDataDependencies"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" -> "Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates_in_Variable_PyConfDataDependencies";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ pi-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices";
subgraph "cluster_CopyParticles/CopyParticles_93391794" {
bgcolor=aliceblue;
label="";
"CopyParticles/CopyParticles_93391794" [label=<<B>CopyParticles/CopyParticles_93391794</B><BR/>OutputParticles = /Event/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip/Particles>, shape=plaintext];
"CopyParticles/CopyParticles_93391794_in_InputParticles" [fillcolor=deepskyblue1, label=InputParticles, style=filled];
"CopyParticles/CopyParticles_93391794" -> "CopyParticles/CopyParticles_93391794_in_InputParticles"  [minlen=0, style=invis];
"CopyParticles/CopyParticles_93391794_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"CopyParticles/CopyParticles_93391794" -> "CopyParticles/CopyParticles_93391794_out_OutputParticles"  [minlen=0, style=invis];
}

"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" -> "CopyParticles/CopyParticles_93391794_in_InputParticles";
subgraph "cluster_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" {
bgcolor=aliceblue;
label="";
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" [label=<<B>TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc</B><BR/>DecayDescriptor = [Lambda_b0 -&gt; Lambda_c+ pi-]cc<BR/>CombinationCut = ( ::Functors::math::in_range( 5000.0, MASS, 7000.0[...]EMOMENTUM )) &gt; 4000.0 ) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ( ( VALUE_OR(Value=nan) @ _CHI2DOF ) &lt; 10.0 ) &amp; [...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 16.0 ) )>, shape=plaintext];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputVertices"  [minlen=0, style=invis];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_out_OutputParticles"  [minlen=0, style=invis];
}

"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input1";
subgraph "cluster_ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" {
bgcolor=aliceblue;
label="";
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" [label=<<B>ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76</B><BR/>DecayDescriptor = [Lambda_c+ -&gt; p+ K- pi+]cc<BR/>Combination12Cut = ( MAXDOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CombinationCut = ( ::Functors::math::in_range( 2080.0, MASS, 2480.0[...]DOCACHI2CUT(thresh=9.0) &amp; MAXDOCACUT(thresh=0.1) )<BR/>CompositeCut = ( ::Functors::math::in_range( 2100.0, MASS, 2460.0[...]&#x27;]), _FORWARDARGS() ), _FORWARDARGS() ) &gt; 25.0 ) )>, shape=plaintext];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1" [fillcolor=deepskyblue1, label=Input1, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2" [fillcolor=deepskyblue1, label=Input2, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3" [fillcolor=deepskyblue1, label=Input3, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Combination12Cut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Combination12Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CombinationCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CombinationCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CompositeCut_PyConfDataDependencies, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices" [fillcolor=coral1, label=OutputVertices, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputVertices"  [minlen=0, style=invis];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles" [fillcolor=coral1, label=OutputParticles, style=filled];
"ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_out_OutputParticles"  [minlen=0, style=invis];
}

"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input1";
subgraph "cluster_ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" [label=<<B>ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_P ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_950c4697" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_950c4697</B><BR/>ParticleID = proton<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_950c4697" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_InputProtoParticles";
subgraph "cluster_ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" {
bgcolor=aliceblue;
label="";
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" [label=<<B>ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee</B><BR/>TrackPredicate = TRACKISLONG<BR/>OutputProtos = /Event/Rec/ProtoP/Long<BR/>OutputTracks = /Event/Rec/Track/BestLong>, shape=plaintext];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos" [fillcolor=deepskyblue1, label=InputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" [fillcolor=coral1, label=OutputProtos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks" [fillcolor=coral1, label=OutputTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs" [fillcolor=coral1, label=OutputRichPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputRichPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs" [fillcolor=coral1, label=OutputMuonPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks" [fillcolor=coral1, label=OutputMuonTracks, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputMuonTracks"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos" [fillcolor=coral1, label=OutputBremInfos, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputBremInfos"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs" [fillcolor=coral1, label=OutputCaloChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputCaloChargedPIDs"  [minlen=0, style=invis];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs" [fillcolor=coral1, label=OutputGlobalChargedPIDs, style=filled];
"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputGlobalChargedPIDs"  [minlen=0, style=invis];
}

"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" -> "ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_in_InputProtos";
subgraph "cluster_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label=<<B>UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged</B><BR/>OutputName = /Event/Rec/ProtoP/Charged>, shape=plaintext];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName"  [minlen=0, style=invis];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_out_OutputName"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputRichPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" [fillcolor=deepskyblue1, label=<<B>InputMuonPIDLocation</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" [fillcolor=deepskyblue1, label=<<B>ElectronHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" [fillcolor=deepskyblue1, label=<<B>PhotonHypos</B><BR/>from Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos>, style=filled];
"Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" -> "UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged</B><BR/>Output = /Event/pRec/ProtoP/Charged>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_ProtoP_Charged_out_Output"  [minlen=0, style=invis];
}

"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddRichInfo_in_InputRichPIDLocation";
subgraph "cluster_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label=<<B>UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs</B><BR/>OutputLevel = 5<BR/>OutputName = /Event/Rec/Rich/PIDs>, shape=plaintext];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName"  [minlen=0, style=invis];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" -> "UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs</B><BR/>Output = /Event/pRec/Rich/PIDs>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Rich_PIDs_out_Output"  [minlen=0, style=invis];
}

"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddMuonInfo_in_InputMuonPIDLocation";
subgraph "cluster_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label=<<B>UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID</B><BR/>OutputName = /Event/Rec/Muon/MuonPID>, shape=plaintext];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName"  [minlen=0, style=invis];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" -> "UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID</B><BR/>Output = /Event/pRec/Muon/MuonPID>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Muon_MuonPID_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_ElectronHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons</B><BR/>OutputName = /Event/Rec/Calo/Electrons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons</B><BR/>Output = /Event/pRec/Calo/Electrons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Electrons_out_Output"  [minlen=0, style=invis];
}

"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" -> "Unpack__Event_Rec_ProtoP_Charged.ChargedProtoParticleAddCaloHypos_in_PhotonHypos";
subgraph "cluster_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label=<<B>UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons</B><BR/>OutputName = /Event/Rec/Calo/Photons>, shape=plaintext];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName"  [minlen=0, style=invis];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" -> "UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons</B><BR/>Output = /Event/pRec/Calo/Photons>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Calo_Photons_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_950c4697_in_PrimaryVertices";
subgraph "cluster_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label=<<B>UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary</B><BR/>OutputName = /Event/Rec/Vertex/Primary>, shape=plaintext];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName"  [minlen=0, style=invis];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" -> "UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary</B><BR/>Output = /Event/pRec/Vertex/Primary>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pRec_Vertex_Primary_out_Output"  [minlen=0, style=invis];
}

"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_protons_for_charm_e5a07030_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input2";
subgraph "cluster_ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" [label=<<B>ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &gt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f</B><BR/>ParticleID = kaon<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_2ff3f10f_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_kaons_for_charm_57e910fa_in_Cut_PyConfDataDependencies";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_Input3";
subgraph "cluster_ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" {
bgcolor=aliceblue;
label="";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" [label=<<B>ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79</B><BR/>Cut = FILTER(Functor=( ( ( RHO_COORDINATE @ THREEMOMENTU[...] ) &amp; ( ( VALUE_OR(Value=nan) @ _PID_K ) &lt; 5.0 ) ))>, shape=plaintext];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Cut_PyConfDataDependencies, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies"  [minlen=0, style=invis];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" [fillcolor=coral1, label=Output, style=filled];
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output"  [minlen=0, style=invis];
}

"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Input";
subgraph "cluster_FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" {
bgcolor=aliceblue;
label="";
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" [label=<<B>FunctionalParticleMaker/FunctionalParticleMaker_442c3d96</B><BR/>ParticleID = pion<BR/>TrackPredicate = ALL<BR/>ProtoParticlePredicate = PPHASRICH>, shape=plaintext];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles" [fillcolor=deepskyblue1, label=InputProtoParticles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TrackPredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_TrackPredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlePredicate_PyConfDataDependencies, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_ProtoParticlePredicate_PyConfDataDependencies"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices" [fillcolor=deepskyblue1, label=PrimaryVertices, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices"  [minlen=0, style=invis];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles" [fillcolor=coral1, label=Particles, style=filled];
"FunctionalParticleMaker/FunctionalParticleMaker_442c3d96" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_out_Particles"  [minlen=0, style=invis];
}

"ChargedProtoParticleFilteredCopyAlg/ChargedProtoParticleFilteredCopyAlg_Long_aa22edee_out_OutputProtos" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_InputProtoParticles";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "FunctionalParticleMaker/FunctionalParticleMaker_442c3d96_in_PrimaryVertices";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_in_Cut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "ThreeBodyCombiner/Tutorial_Lcp_Combiner_31babe76_in_PrimaryVertices";
"ParticleRangeFilter/Tutorial_pions_for_charm_and_beauty_96975c79_out_Output" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_Input2";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_CompositeCut_PyConfDataDependencies";
"UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary_out_OutputName" -> "TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc_in_PrimaryVertices";
subgraph "cluster_DeterministicPrescaler/HLT2PrescaleDecReportsMonitor" {
bgcolor=aliceblue;
label="";
"DeterministicPrescaler/HLT2PrescaleDecReportsMonitor" [label=<<B>DeterministicPrescaler/HLT2PrescaleDecReportsMonitor</B><BR/>AcceptFraction = 0.1<BR/>SeedName = HLT2PrescaleDecReportsMonitor>, shape=plaintext];
"DeterministicPrescaler/HLT2PrescaleDecReportsMonitor_in_ODINLocation" [fillcolor=deepskyblue1, label=ODINLocation, style=filled];
"DeterministicPrescaler/HLT2PrescaleDecReportsMonitor" -> "DeterministicPrescaler/HLT2PrescaleDecReportsMonitor_in_ODINLocation"  [minlen=0, style=invis];
}

"createODIN/Decode_ODIN_out_ODIN" -> "DeterministicPrescaler/HLT2PrescaleDecReportsMonitor_in_ODINLocation";
subgraph "cluster_createODIN/Decode_ODIN" {
bgcolor=aliceblue;
label="";
"createODIN/Decode_ODIN" [label=<<B>createODIN/Decode_ODIN</B><BR/>defaults-only>, shape=plaintext];
"createODIN/Decode_ODIN_in_RawBanks" [fillcolor=deepskyblue1, label=RawBanks, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_in_RawBanks"  [minlen=0, style=invis];
"createODIN/Decode_ODIN_out_ODIN" [fillcolor=coral1, label=ODIN, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_out_ODIN"  [minlen=0, style=invis];
}

"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" -> "createODIN/Decode_ODIN_in_RawBanks";
subgraph "cluster_LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" {
bgcolor=aliceblue;
label="";
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" [label=<<B>LHCb::UnpackRawEvent/UnpackRawEvent_ODIN</B><BR/>BankTypes = [&#x27;ODIN&#x27;]<BR/>RawBankLocations = /Event/RawBanks/ODIN>, shape=plaintext];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation" [fillcolor=deepskyblue1, label=RawEventLocation, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation"  [minlen=0, style=invis];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" [fillcolor=coral1, label=RawBankLocations, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent</B><BR/>Output = /Event/Trigger/RawEvent>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_HltDecReportsMonitor/HLT2DecReportsMonitor" {
bgcolor=aliceblue;
label="";
"HltDecReportsMonitor/HLT2DecReportsMonitor" [label=<<B>HltDecReportsMonitor/HLT2DecReportsMonitor</B><BR/>defaults-only>, shape=plaintext];
"HltDecReportsMonitor/HLT2DecReportsMonitor_in_Input" [fillcolor=deepskyblue1, label=Input, style=filled];
"HltDecReportsMonitor/HLT2DecReportsMonitor" -> "HltDecReportsMonitor/HLT2DecReportsMonitor_in_Input"  [minlen=0, style=invis];
}

"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation" -> "HltDecReportsMonitor/HLT2DecReportsMonitor_in_Input";
subgraph "cluster_ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" {
bgcolor=aliceblue;
label="";
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" [label=<<B>ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67</B><BR/>Persist = [&#x27;Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip&#x27;, &#x27;Hlt2T[...]t450MeV&#x27;, &#x27;Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip&#x27;]<BR/>ANNSvcKey = Hlt2SelectionID<BR/>TCK = 1650285923>, shape=plaintext];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation" [fillcolor=coral1, label=DecReportsLocation, style=filled];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" -> "ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation"  [minlen=0, style=invis];
}

subgraph "cluster_DeterministicPrescaler/HLT2PostscaleDecReportsMonitor" {
bgcolor=aliceblue;
label="";
"DeterministicPrescaler/HLT2PostscaleDecReportsMonitor" [label=<<B>DeterministicPrescaler/HLT2PostscaleDecReportsMonitor</B><BR/>AcceptFraction = 0.0<BR/>SeedName = HLT2PostscaleDecReportsMonitor>, shape=plaintext];
"DeterministicPrescaler/HLT2PostscaleDecReportsMonitor_in_ODINLocation" [fillcolor=deepskyblue1, label=ODINLocation, style=filled];
"DeterministicPrescaler/HLT2PostscaleDecReportsMonitor" -> "DeterministicPrescaler/HLT2PostscaleDecReportsMonitor_in_ODINLocation"  [minlen=0, style=invis];
}

"createODIN/Decode_ODIN_out_ODIN" -> "DeterministicPrescaler/HLT2PostscaleDecReportsMonitor_in_ODINLocation";
subgraph "cluster_createODIN/Decode_ODIN" {
bgcolor=aliceblue;
label="";
"createODIN/Decode_ODIN" [label=<<B>createODIN/Decode_ODIN</B><BR/>defaults-only>, shape=plaintext];
"createODIN/Decode_ODIN_in_RawBanks" [fillcolor=deepskyblue1, label=RawBanks, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_in_RawBanks"  [minlen=0, style=invis];
"createODIN/Decode_ODIN_out_ODIN" [fillcolor=coral1, label=ODIN, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_out_ODIN"  [minlen=0, style=invis];
}

"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" -> "createODIN/Decode_ODIN_in_RawBanks";
subgraph "cluster_LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" {
bgcolor=aliceblue;
label="";
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" [label=<<B>LHCb::UnpackRawEvent/UnpackRawEvent_ODIN</B><BR/>BankTypes = [&#x27;ODIN&#x27;]<BR/>RawBankLocations = /Event/RawBanks/ODIN>, shape=plaintext];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation" [fillcolor=deepskyblue1, label=RawEventLocation, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation"  [minlen=0, style=invis];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" [fillcolor=coral1, label=RawBankLocations, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent</B><BR/>Output = /Event/Trigger/RawEvent>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" {
bgcolor=aliceblue;
label="";
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" [label=<<B>ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67</B><BR/>Persist = [&#x27;Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip&#x27;, &#x27;Hlt2T[...]t450MeV&#x27;, &#x27;Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip&#x27;]<BR/>ANNSvcKey = Hlt2SelectionID<BR/>TCK = 1650285923>, shape=plaintext];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation" [fillcolor=coral1, label=DecReportsLocation, style=filled];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" -> "ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation"  [minlen=0, style=invis];
}

subgraph "cluster_HltDecReportsWriter/HltDecReportsWriter_bfc674ac" {
bgcolor=aliceblue;
label="";
"HltDecReportsWriter/HltDecReportsWriter_bfc674ac" [label=<<B>HltDecReportsWriter/HltDecReportsWriter_bfc674ac</B><BR/>SourceID = Hlt2<BR/>EncodingKey = 1650285923>, shape=plaintext];
"HltDecReportsWriter/HltDecReportsWriter_bfc674ac_in_InputHltDecReportsLocation" [fillcolor=deepskyblue1, label=InputHltDecReportsLocation, style=filled];
"HltDecReportsWriter/HltDecReportsWriter_bfc674ac" -> "HltDecReportsWriter/HltDecReportsWriter_bfc674ac_in_InputHltDecReportsLocation"  [minlen=0, style=invis];
"HltDecReportsWriter/HltDecReportsWriter_bfc674ac_out_OutputView" [fillcolor=coral1, label=OutputView, style=filled];
"HltDecReportsWriter/HltDecReportsWriter_bfc674ac" -> "HltDecReportsWriter/HltDecReportsWriter_bfc674ac_out_OutputView"  [minlen=0, style=invis];
"HltDecReportsWriter/HltDecReportsWriter_bfc674ac_out_OutputRawEvent" [fillcolor=coral1, label=OutputRawEvent, style=filled];
"HltDecReportsWriter/HltDecReportsWriter_bfc674ac" -> "HltDecReportsWriter/HltDecReportsWriter_bfc674ac_out_OutputRawEvent"  [minlen=0, style=invis];
}

"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation" -> "HltDecReportsWriter/HltDecReportsWriter_bfc674ac_in_InputHltDecReportsLocation";
subgraph "cluster_ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" {
bgcolor=aliceblue;
label="";
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" [label=<<B>ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67</B><BR/>Persist = [&#x27;Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip&#x27;, &#x27;Hlt2T[...]t450MeV&#x27;, &#x27;Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip&#x27;]<BR/>ANNSvcKey = Hlt2SelectionID<BR/>TCK = 1650285923>, shape=plaintext];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation" [fillcolor=coral1, label=DecReportsLocation, style=filled];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" -> "ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation"  [minlen=0, style=invis];
}

subgraph "cluster_HltDecReportsFilter/HltDecReportsFilter_2a7fce15" {
bgcolor=aliceblue;
label="";
"HltDecReportsFilter/HltDecReportsFilter_2a7fce15" [label=<<B>HltDecReportsFilter/HltDecReportsFilter_2a7fce15</B><BR/>Lines = [&#x27;Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipDecision&#x27;[...], &#x27;Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipDecision&#x27;]>, shape=plaintext];
"HltDecReportsFilter/HltDecReportsFilter_2a7fce15_in_DecReports" [fillcolor=deepskyblue1, label=DecReports, style=filled];
"HltDecReportsFilter/HltDecReportsFilter_2a7fce15" -> "HltDecReportsFilter/HltDecReportsFilter_2a7fce15_in_DecReports"  [minlen=0, style=invis];
}

"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation" -> "HltDecReportsFilter/HltDecReportsFilter_2a7fce15_in_DecReports";
subgraph "cluster_ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" {
bgcolor=aliceblue;
label="";
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" [label=<<B>ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67</B><BR/>Persist = [&#x27;Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip&#x27;, &#x27;Hlt2T[...]t450MeV&#x27;, &#x27;Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip&#x27;]<BR/>ANNSvcKey = Hlt2SelectionID<BR/>TCK = 1650285923>, shape=plaintext];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation" [fillcolor=coral1, label=DecReportsLocation, style=filled];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" -> "ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation"  [minlen=0, style=invis];
}

subgraph "cluster_CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda" {
bgcolor=aliceblue;
label="";
"CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda" [label=<<B>CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda</B><BR/>OutputPrefix = /Event/HLT2<BR/>OutputLevel = 4<BR/>InputLocations = []>, shape=plaintext];
"CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda_in_InputLocations_PyConfDataDependencies" [fillcolor=deepskyblue1, label=InputLocations_PyConfDataDependencies, style=filled];
"CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda" -> "CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda_in_InputLocations_PyConfDataDependencies"  [minlen=0, style=invis];
}

subgraph "cluster_CopySignalMCParticles/CopySignalMCParticles_2747ee93" {
bgcolor=aliceblue;
label="";
"CopySignalMCParticles/CopySignalMCParticles_2747ee93" [label=<<B>CopySignalMCParticles/CopySignalMCParticles_2747ee93</B><BR/>OutputPrefix = /Event/HLT2<BR/>ExtraOutputs = [&#x27;/Event/HLT2/MC/Particles&#x27;, &#x27;/Event/HLT2/MC/Vertices&#x27;]>, shape=plaintext];
"CopySignalMCParticles/CopySignalMCParticles_2747ee93_in_MCParticlesLocation" [fillcolor=deepskyblue1, label=MCParticlesLocation, style=filled];
"CopySignalMCParticles/CopySignalMCParticles_2747ee93" -> "CopySignalMCParticles/CopySignalMCParticles_2747ee93_in_MCParticlesLocation"  [minlen=0, style=invis];
}

"UnpackMCParticle/Unpack__Event_MC_Particles_out_OutputName" -> "CopySignalMCParticles/CopySignalMCParticles_2747ee93_in_MCParticlesLocation";
subgraph "cluster_UnpackMCParticle/Unpack__Event_MC_Particles" {
bgcolor=aliceblue;
label="";
"UnpackMCParticle/Unpack__Event_MC_Particles" [label=<<B>UnpackMCParticle/Unpack__Event_MC_Particles</B><BR/>OutputName = /Event/MC/Particles>, shape=plaintext];
"UnpackMCParticle/Unpack__Event_MC_Particles_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMCParticle/Unpack__Event_MC_Particles" -> "UnpackMCParticle/Unpack__Event_MC_Particles_in_InputName"  [minlen=0, style=invis];
"UnpackMCParticle/Unpack__Event_MC_Particles_in_ExtraInputs" [fillcolor=deepskyblue1, label=ExtraInputs, style=filled];
"UnpackMCParticle/Unpack__Event_MC_Particles" -> "UnpackMCParticle/Unpack__Event_MC_Particles_in_ExtraInputs"  [minlen=0, style=invis];
"UnpackMCParticle/Unpack__Event_MC_Particles_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMCParticle/Unpack__Event_MC_Particles" -> "UnpackMCParticle/Unpack__Event_MC_Particles_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCParticles_out_Output" -> "UnpackMCParticle/Unpack__Event_MC_Particles_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCParticles" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCParticles" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCParticles</B><BR/>Output = /Event/pSim/MCParticles>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCParticles_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCParticles" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCParticles_out_Output"  [minlen=0, style=invis];
}

"UnpackMCVertex/Unpack__Event_MC_Vertices_out_OutputName" -> "UnpackMCParticle/Unpack__Event_MC_Particles_in_ExtraInputs";
subgraph "cluster_UnpackMCVertex/Unpack__Event_MC_Vertices" {
bgcolor=aliceblue;
label="";
"UnpackMCVertex/Unpack__Event_MC_Vertices" [label=<<B>UnpackMCVertex/Unpack__Event_MC_Vertices</B><BR/>OutputName = /Event/MC/Vertices>, shape=plaintext];
"UnpackMCVertex/Unpack__Event_MC_Vertices_in_InputName" [fillcolor=deepskyblue1, label=InputName, style=filled];
"UnpackMCVertex/Unpack__Event_MC_Vertices" -> "UnpackMCVertex/Unpack__Event_MC_Vertices_in_InputName"  [minlen=0, style=invis];
"UnpackMCVertex/Unpack__Event_MC_Vertices_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"UnpackMCVertex/Unpack__Event_MC_Vertices" -> "UnpackMCVertex/Unpack__Event_MC_Vertices_out_OutputName"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCVertices_out_Output" -> "UnpackMCVertex/Unpack__Event_MC_Vertices_in_InputName";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCVertices" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCVertices" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCVertices</B><BR/>Output = /Event/pSim/MCVertices>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCVertices_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCVertices" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_pSim_MCVertices_out_Output"  [minlen=0, style=invis];
}

subgraph "cluster_PackMCParticle/Pack__Event_HLT2_MC_Particles" {
bgcolor=aliceblue;
label="";
"PackMCParticle/Pack__Event_HLT2_MC_Particles" [label=<<B>PackMCParticle/Pack__Event_HLT2_MC_Particles</B><BR/>InputName = /Event/HLT2/MC/Particles<BR/>OutputName = /Event/HLT2/pSim/MCParticles>, shape=plaintext];
"PackMCParticle/Pack__Event_HLT2_MC_Particles_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"PackMCParticle/Pack__Event_HLT2_MC_Particles" -> "PackMCParticle/Pack__Event_HLT2_MC_Particles_out_OutputName"  [minlen=0, style=invis];
}

subgraph "cluster_PackMCVertex/Pack__Event_HLT2_MC_Vertices" {
bgcolor=aliceblue;
label="";
"PackMCVertex/Pack__Event_HLT2_MC_Vertices" [label=<<B>PackMCVertex/Pack__Event_HLT2_MC_Vertices</B><BR/>InputName = /Event/HLT2/MC/Vertices<BR/>OutputName = /Event/HLT2/pSim/MCVertices>, shape=plaintext];
"PackMCVertex/Pack__Event_HLT2_MC_Vertices_out_OutputName" [fillcolor=coral1, label=OutputName, style=filled];
"PackMCVertex/Pack__Event_HLT2_MC_Vertices" -> "PackMCVertex/Pack__Event_HLT2_MC_Vertices_out_OutputName"  [minlen=0, style=invis];
}

subgraph "cluster_HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42" {
bgcolor=aliceblue;
label="";
"HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42" [label=<<B>HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42</B><BR/>Compression = NoCompression<BR/>SourceID = Hlt2>, shape=plaintext];
"HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42_in_PackedContainers" [fillcolor=deepskyblue1, label=PackedContainers, style=filled];
"HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42" -> "HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42_in_PackedContainers"  [minlen=0, style=invis];
"HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42_out_OutputView" [fillcolor=coral1, label=OutputView, style=filled];
"HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42" -> "HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42_out_OutputView"  [minlen=0, style=invis];
"HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42_out_OutputRawEvent" [fillcolor=coral1, label=OutputRawEvent, style=filled];
"HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42" -> "HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42_out_OutputRawEvent"  [minlen=0, style=invis];
}

"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_out_outputLocation" -> "HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42_in_PackedContainers";
subgraph "cluster_LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" {
bgcolor=aliceblue;
label="";
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" [label=<<B>LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c</B><BR/>AnonymizeDependencies = True<BR/>AbsentRequestedContainerAllowed = False<BR/>ExternalLocations = {&#x27;/Event/MC/Particles&#x27;: &#x27;/Event/HLT2/MC/Particles&#x27;, &#x27;/Event/MC/Vertices&#x27;: &#x27;/Event/HLT2/MC/Vertices&#x27;}<BR/>OutputPrefix = /Event/HLT2<BR/>EncodingKey = 4088931529<BR/>LineToLocations = {&#x27;Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipDecision&#x27;[...]/Event/Rec/Vertex/Primary&#x27;, &#x27;/Event/Rec/Summary&#x27;]}<BR/>EnableCheck = False<BR/>EnableChecksum = False<BR/>ParticlesSelection = [&#x27;/Event/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_P[...]/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip/Particles&#x27;]<BR/>PVs = [&#x27;/Event/Rec/Vertex/Primary&#x27;]<BR/>RecSummary = [&#x27;/Event/Rec/Summary&#x27;]<BR/>AlwaysPack = []<BR/>AddCaloDigits = []<BR/>AddCaloClusters = []<BR/>AddPVTracks = []<BR/>AddTrackAncestors = []<BR/>ProtoParticlesSelection = []<BR/>TracksSelection = []<BR/>RichPIDsSelection = []<BR/>MuonPIDsSelection = []<BR/>PVsSelection = []<BR/>VerticesSelection = []<BR/>TwoProngVerticesSelection = []<BR/>CaloHyposSelection = []<BR/>CaloClustersSelection = []<BR/>FlavourTagsSelection = []<BR/>Particles = []<BR/>ProtoParticles = []<BR/>Tracks = []<BR/>RichPIDs = []<BR/>CaloChargedPIDs = []<BR/>BremInfos = []<BR/>MuonPIDs = []<BR/>GlobalChargedPIDs = []<BR/>NeutralPIDs = []<BR/>Vertices = []<BR/>TwoProngVertices = []<BR/>CaloHypos = []<BR/>CaloClusters = []<BR/>CaloDigits = []<BR/>CaloAdcs = []<BR/>FlavourTags = []<BR/>WeightsVectors = []<BR/>P2VRelations = []<BR/>P2MCPRelations = []<BR/>P2IntRelations = []<BR/>P2InfoRelations = []<BR/>PP2MCPRelations = []<BR/>ExtendedPVs = []>, shape=plaintext];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AlwaysPack_PyConfDataDependencies" [fillcolor=deepskyblue1, label=AlwaysPack_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AlwaysPack_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AddCaloDigits_PyConfDataDependencies" [fillcolor=deepskyblue1, label=AddCaloDigits_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AddCaloDigits_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AddCaloClusters_PyConfDataDependencies" [fillcolor=deepskyblue1, label=AddCaloClusters_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AddCaloClusters_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AddPVTracks_PyConfDataDependencies" [fillcolor=deepskyblue1, label=AddPVTracks_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AddPVTracks_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AddTrackAncestors_PyConfDataDependencies" [fillcolor=deepskyblue1, label=AddTrackAncestors_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_AddTrackAncestors_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_DecReports" [fillcolor=deepskyblue1, label=DecReports, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_DecReports"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_ProtoParticlesSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticlesSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_ProtoParticlesSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_TracksSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TracksSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_TracksSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_RichPIDsSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=RichPIDsSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_RichPIDsSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_MuonPIDsSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=MuonPIDsSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_MuonPIDsSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_PVsSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=PVsSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_PVsSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_VerticesSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=VerticesSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_VerticesSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_TwoProngVerticesSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TwoProngVerticesSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_TwoProngVerticesSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloHyposSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CaloHyposSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloHyposSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloClustersSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CaloClustersSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloClustersSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_FlavourTagsSelection_PyConfDataDependencies" [fillcolor=deepskyblue1, label=FlavourTagsSelection_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_FlavourTagsSelection_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_Particles_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Particles_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_Particles_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_ProtoParticles_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ProtoParticles_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_ProtoParticles_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_Tracks_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Tracks_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_Tracks_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_RichPIDs_PyConfDataDependencies" [fillcolor=deepskyblue1, label=RichPIDs_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_RichPIDs_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloChargedPIDs_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CaloChargedPIDs_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloChargedPIDs_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_BremInfos_PyConfDataDependencies" [fillcolor=deepskyblue1, label=BremInfos_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_BremInfos_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_MuonPIDs_PyConfDataDependencies" [fillcolor=deepskyblue1, label=MuonPIDs_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_MuonPIDs_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_GlobalChargedPIDs_PyConfDataDependencies" [fillcolor=deepskyblue1, label=GlobalChargedPIDs_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_GlobalChargedPIDs_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_NeutralPIDs_PyConfDataDependencies" [fillcolor=deepskyblue1, label=NeutralPIDs_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_NeutralPIDs_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_Vertices_PyConfDataDependencies" [fillcolor=deepskyblue1, label=Vertices_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_Vertices_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_TwoProngVertices_PyConfDataDependencies" [fillcolor=deepskyblue1, label=TwoProngVertices_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_TwoProngVertices_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloHypos_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CaloHypos_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloHypos_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloClusters_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CaloClusters_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloClusters_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloDigits_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CaloDigits_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloDigits_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloAdcs_PyConfDataDependencies" [fillcolor=deepskyblue1, label=CaloAdcs_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_CaloAdcs_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_FlavourTags_PyConfDataDependencies" [fillcolor=deepskyblue1, label=FlavourTags_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_FlavourTags_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_WeightsVectors_PyConfDataDependencies" [fillcolor=deepskyblue1, label=WeightsVectors_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_WeightsVectors_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_P2VRelations_PyConfDataDependencies" [fillcolor=deepskyblue1, label=P2VRelations_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_P2VRelations_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_P2MCPRelations_PyConfDataDependencies" [fillcolor=deepskyblue1, label=P2MCPRelations_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_P2MCPRelations_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_P2IntRelations_PyConfDataDependencies" [fillcolor=deepskyblue1, label=P2IntRelations_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_P2IntRelations_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_P2InfoRelations_PyConfDataDependencies" [fillcolor=deepskyblue1, label=P2InfoRelations_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_P2InfoRelations_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_PP2MCPRelations_PyConfDataDependencies" [fillcolor=deepskyblue1, label=PP2MCPRelations_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_PP2MCPRelations_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_ExtendedPVs_PyConfDataDependencies" [fillcolor=deepskyblue1, label=ExtendedPVs_PyConfDataDependencies, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_ExtendedPVs_PyConfDataDependencies"  [minlen=0, style=invis];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_out_outputLocation" [fillcolor=coral1, label=outputLocation, style=filled];
"LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_out_outputLocation"  [minlen=0, style=invis];
}

"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation" -> "LHCb__SelectivePacker/LHCb__SelectivePacker_e6e40e7c_in_DecReports";
subgraph "cluster_ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" {
bgcolor=aliceblue;
label="";
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" [label=<<B>ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67</B><BR/>Persist = [&#x27;Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip&#x27;, &#x27;Hlt2T[...]t450MeV&#x27;, &#x27;Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip&#x27;]<BR/>ANNSvcKey = Hlt2SelectionID<BR/>TCK = 1650285923>, shape=plaintext];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation" [fillcolor=coral1, label=DecReportsLocation, style=filled];
"ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" -> "ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67_out_DecReportsLocation"  [minlen=0, style=invis];
}

subgraph "cluster_createODIN/Decode_ODIN" {
bgcolor=aliceblue;
label="";
"createODIN/Decode_ODIN" [label=<<B>createODIN/Decode_ODIN</B><BR/>defaults-only>, shape=plaintext];
"createODIN/Decode_ODIN_in_RawBanks" [fillcolor=deepskyblue1, label=RawBanks, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_in_RawBanks"  [minlen=0, style=invis];
"createODIN/Decode_ODIN_out_ODIN" [fillcolor=coral1, label=ODIN, style=filled];
"createODIN/Decode_ODIN" -> "createODIN/Decode_ODIN_out_ODIN"  [minlen=0, style=invis];
}

"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" -> "createODIN/Decode_ODIN_in_RawBanks";
subgraph "cluster_LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" {
bgcolor=aliceblue;
label="";
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" [label=<<B>LHCb::UnpackRawEvent/UnpackRawEvent_ODIN</B><BR/>BankTypes = [&#x27;ODIN&#x27;]<BR/>RawBankLocations = /Event/RawBanks/ODIN>, shape=plaintext];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation" [fillcolor=deepskyblue1, label=RawEventLocation, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation"  [minlen=0, style=invis];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations" [fillcolor=coral1, label=RawBankLocations, style=filled];
"LHCb::UnpackRawEvent/UnpackRawEvent_ODIN" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_out_RawBankLocations"  [minlen=0, style=invis];
}

"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" -> "LHCb::UnpackRawEvent/UnpackRawEvent_ODIN_in_RawEventLocation";
subgraph "cluster_Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" {
bgcolor=aliceblue;
label="";
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" [label=<<B>Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent</B><BR/>Output = /Event/Trigger/RawEvent>, shape=plaintext];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output" [fillcolor=coral1, label=Output, style=filled];
"Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent" -> "Gaudi::Hive::FetchDataFromFile/Fetch__Event_Trigger_RawEvent_out_Output"  [minlen=0, style=invis];
}

}

Whilst the control flow looks like this:

strict digraph control_flow {
compound=True;
label="Control flow generated at Mon Apr 08 09:58:07 2024";
subgraph cluster_moore {
label=<<B>moore</B><BR/>LAZY_AND, ordered>;
edge [dir=forward];
subgraph cluster_lines {
label=<<B>lines</B><BR/>NONLAZY_OR, ordered>;
edge [dir=forward];
subgraph cluster_hlt_decision {
label=<<B>hlt_decision</B><BR/>NONLAZY_OR, unordered>;
edge [dir=none];
subgraph cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipDecisionWithOutput {
label=<<B>Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipDecisionWithOutput</B><BR/>LAZY_AND, ordered>;
edge [dir=forward];
subgraph cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip {
label=<<B>Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip</B><BR/>LAZY_AND, ordered>;
edge [dir=forward];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler" [label="DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label="UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label="UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label="UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackTrack/Unpack__Event_Rec_Track_Best" [label="UnpackTrack/Unpack__Event_Rec_Track_Best"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackTrack/Unpack__Event_Rec_Track_Best";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" [label="UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackTrack/Unpack__Event_Rec_Track_Best" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label="UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_VoidFilter/require_pvs" [label="VoidFilter/require_pvs"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_VoidFilter/require_pvs";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label="ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_VoidFilter/require_pvs" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" [label="TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_TwoBodyCombiner/Tutorial_Lb0_Combiner_ca3717f3_ca3717f3" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_pt" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_eta" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_m" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_vchi2" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates" [label="Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_ipchi2" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_n_candidates";
}

subgraph cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipOutput {
label=<<B>Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipOutput</B><BR/>NONLAZY_OR, unordered>;
edge [dir=none];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipOutput_CopyParticles/CopyParticles_aa8e28d1" [label="CopyParticles/CopyParticles_aa8e28d1"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipOutput_FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb" [label="FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipOutput_CopyParticles/CopyParticles_aa8e28d1" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipOutput_FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb";
}

"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipOutput_CopyParticles/CopyParticles_aa8e28d1"  [lhead=cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipOutput, ltail=cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip];
}

subgraph cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVDecisionWithOutput {
label=<<B>Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVDecisionWithOutput</B><BR/>LAZY_AND, ordered>;
edge [dir=forward];
subgraph cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV {
label=<<B>Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV</B><BR/>LAZY_AND, ordered>;
edge [dir=forward];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler" [label="DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label="UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label="UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label="UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackTrack/Unpack__Event_Rec_Track_Best" [label="UnpackTrack/Unpack__Event_Rec_Track_Best"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackTrack/Unpack__Event_Rec_Track_Best";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" [label="UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackTrack/Unpack__Event_Rec_Track_Best" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label="UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_VoidFilter/require_pvs" [label="VoidFilter/require_pvs"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_VoidFilter/require_pvs";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" [label="ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_VoidFilter/require_pvs" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" [label="TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ParticleRangeFilter/Tutorial_muons_for_lb0_e4791fff" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_TwoBodyCombiner/Tutorial_Lb0_Combiner_3f6639fa_3f6639fa" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_pt" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_eta" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_m" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_vchi2" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2";
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates" [label="Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_ipchi2" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_n_candidates";
}

subgraph cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVOutput {
label=<<B>Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVOutput</B><BR/>NONLAZY_OR, unordered>;
edge [dir=none];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVOutput_CopyParticles/CopyParticles_5e320ffa" [label="CopyParticles/CopyParticles_5e320ffa"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVOutput_FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb" [label="FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb"];
"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVOutput_CopyParticles/CopyParticles_5e320ffa" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVOutput_FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb";
}

"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVOutput_CopyParticles/CopyParticles_5e320ffa"  [lhead=cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVOutput, ltail=cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV];
}

"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler" -> "Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler"  [lhead=cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVDecisionWithOutput, ltail=cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPipDecisionWithOutput];
subgraph cluster_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipDecisionWithOutput {
label=<<B>Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipDecisionWithOutput</B><BR/>LAZY_AND, ordered>;
edge [dir=forward];
subgraph cluster_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip {
label=<<B>Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip</B><BR/>LAZY_AND, ordered>;
edge [dir=forward];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler" [label="DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" [label="UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackRecVertex/Unpack__Event_Rec_Vertex_Primary" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Electrons" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_Photons" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" [label="UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_MergedPi0s" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" [label="UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackCaloHypo/Unpack__Event_Rec_Calo_SplitPhotons" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" [label="UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackMuonPIDs/Unpack__Event_Rec_Muon_MuonPID" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackTrack/Unpack__Event_Rec_Track_Best" [label="UnpackTrack/Unpack__Event_Rec_Track_Best"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackRichPIDs/Unpack__Event_Rec_Rich_PIDs" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackTrack/Unpack__Event_Rec_Track_Best";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" [label="UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackTrack/Unpack__Event_Rec_Track_Best" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" [label="UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Neutrals" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_VoidFilter/require_pvs" [label="VoidFilter/require_pvs"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_UnpackProtoParticle/Unpack__Event_Rec_ProtoP_Charged" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_VoidFilter/require_pvs";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" [label="TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_VoidFilter/require_pvs" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_TwoBodyCombiner/Tutorial_Lb0_Combiner_c05eebdc_c05eebdc" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_pt" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_eta" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_m" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2" [label="Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_vchi2" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2";
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates" [label="Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__ParticleRange/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_ipchi2" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Monitor__EventVariable/Monitor_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_n_candidates";
}

subgraph cluster_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipOutput {
label=<<B>Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipOutput</B><BR/>NONLAZY_OR, unordered>;
edge [dir=none];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipOutput_CopyParticles/CopyParticles_93391794" [label="CopyParticles/CopyParticles_93391794"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipOutput_FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb" [label="FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb"];
"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipOutput_CopyParticles/CopyParticles_93391794" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipOutput_FakeRecSummaryMaker/FakeRecSummaryMaker_f1577deb";
}

"Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipOutput_CopyParticles/CopyParticles_93391794"  [lhead=cluster_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipOutput, ltail=cluster_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip];
}

"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV_Prescaler" -> "Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Prescaler"  [lhead=cluster_Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPipDecisionWithOutput, ltail=cluster_Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeVDecisionWithOutput];
}

subgraph cluster_monitor_decisions {
label=<<B>monitor_decisions</B><BR/>LAZY_AND, ordered>;
edge [dir=forward];
"monitor_decisions_DeterministicPrescaler/HLT2PrescaleDecReportsMonitor" [label="DeterministicPrescaler/HLT2PrescaleDecReportsMonitor"];
"monitor_decisions_HltDecReportsMonitor/HLT2DecReportsMonitor" [label="HltDecReportsMonitor/HLT2DecReportsMonitor"];
"monitor_decisions_DeterministicPrescaler/HLT2PrescaleDecReportsMonitor" -> "monitor_decisions_HltDecReportsMonitor/HLT2DecReportsMonitor";
"monitor_decisions_DeterministicPrescaler/HLT2PostscaleDecReportsMonitor" [label="DeterministicPrescaler/HLT2PostscaleDecReportsMonitor"];
"monitor_decisions_HltDecReportsMonitor/HLT2DecReportsMonitor" -> "monitor_decisions_DeterministicPrescaler/HLT2PostscaleDecReportsMonitor";
}

"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler" -> "monitor_decisions_DeterministicPrescaler/HLT2PrescaleDecReportsMonitor"  [lhead=cluster_monitor_decisions, ltail=cluster_hlt_decision];
}

subgraph cluster_report_writers {
label=<<B>report_writers</B><BR/>NONLAZY_OR, ordered>;
edge [dir=forward];
"report_writers_ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" [label="ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67"];
"report_writers_HltDecReportsWriter/HltDecReportsWriter_bfc674ac" [label="HltDecReportsWriter/HltDecReportsWriter_bfc674ac"];
"report_writers_ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" -> "report_writers_HltDecReportsWriter/HltDecReportsWriter_bfc674ac";
}

"Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_DeterministicPrescaler/Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Prescaler" -> "report_writers_ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67"  [lhead=cluster_report_writers, ltail=cluster_lines];
subgraph cluster_stream_writers {
label=<<B>stream_writers</B><BR/>NONLAZY_OR, unordered>;
edge [dir=none];
subgraph cluster_default_writer {
label=<<B>default_writer</B><BR/>LAZY_AND, ordered>;
edge [dir=forward];
"default_writer_HltDecReportsFilter/HltDecReportsFilter_2a7fce15" [label="HltDecReportsFilter/HltDecReportsFilter_2a7fce15"];
subgraph cluster_default_line_output_persistence {
label=<<B>default_line_output_persistence</B><BR/>NONLAZY_OR, ordered>;
edge [dir=forward];
subgraph cluster_mc_packers {
label=<<B>mc_packers</B><BR/>NONLAZY_OR, ordered>;
edge [dir=forward];
"mc_packers_CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda" [label="CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda"];
"mc_packers_CopySignalMCParticles/CopySignalMCParticles_2747ee93" [label="CopySignalMCParticles/CopySignalMCParticles_2747ee93"];
"mc_packers_CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda" -> "mc_packers_CopySignalMCParticles/CopySignalMCParticles_2747ee93";
"mc_packers_PackMCParticle/Pack__Event_HLT2_MC_Particles" [label="PackMCParticle/Pack__Event_HLT2_MC_Particles"];
"mc_packers_CopySignalMCParticles/CopySignalMCParticles_2747ee93" -> "mc_packers_PackMCParticle/Pack__Event_HLT2_MC_Particles";
"mc_packers_PackMCVertex/Pack__Event_HLT2_MC_Vertices" [label="PackMCVertex/Pack__Event_HLT2_MC_Vertices"];
"mc_packers_PackMCParticle/Pack__Event_HLT2_MC_Particles" -> "mc_packers_PackMCVertex/Pack__Event_HLT2_MC_Vertices";
}

"default_line_output_persistence_HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42" [label="HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42"];
"mc_packers_CopyProtoParticle2MCRelations/CopyProtoParticle2MCRelations_d542bcda" -> "default_line_output_persistence_HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42"  [ltail=cluster_mc_packers];
}

"default_writer_HltDecReportsFilter/HltDecReportsFilter_2a7fce15" -> "default_line_output_persistence_HltPackedBufferWriter/HltPackedBufferWriter_4bb0ea42"  [lhead=cluster_default_line_output_persistence];
}

}

"report_writers_ExecutionReportsWriter/ExecutionReportsWriter_1a74cd67" -> "default_writer_HltDecReportsFilter/HltDecReportsFilter_2a7fce15"  [lhead=cluster_stream_writers, ltail=cluster_report_writers];
}

}

The control flow node for our HLT2 line contains quite a few steps. Most of these are the upfront reconstruction we added earlier. Again, the presence of these is just a detail for now; in the near future the control flow for a line will look much simpler, for our line being just the \(\Lambda_{b}^{0}\) combiner algorithm.

Inspecting the log-file

Some aspects of reading and understanding log files, like reading off Moore configuration options and the control flow table are documented in the “Running Moore” section.

Here, we focus on counters of filters and combiners, and the timing table. If you did not pass a name to ParticleFilter, the default will be ParticleRangeFilter. Every time a new instance of ParticleFilter is created, the name changes automatically to ParticleRangeFilter#i for the i+1 st instance in the sequence. In a similar manner combiners have as default names TwoBodyCombiner, ThreeBodyCombiner and FourBodyCombiner.

Note

As mentioned in the discussion on filters and combiners, the framework de-duplicates algorithms with the exact same configuration. For filters of basic particles, the likelihood of “accidentally” sharing the configuration with any line in Moore is relatively large. If there are multiple instances with different names, PyConf will raise an exception at compile time. Therefore we recommend to only give names to combiners.

These names appear in counters, the timing, and control flow table (if they are part of the control flow). We can search for them, for example with:

grep -A 7 'Tutorial_Lcp_Combiner' logs/test_line.log

and find something like:

151:Tutorial_Lcp_Combiner                                      INFO Number of counters : 6
152- |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
153- |*"# passed"                                      |       100 |          0 |(  0.000000 +-  0.000000)% |
154- |*"# passed Combination12Cut"                     |       128 |          4 |( 3.125000 +- 1.537892)% |
155- |*"# passed CombinationCut"                       |        10 |          0 |(  0.000000 +-  0.000000)% |
156- | "Input1 size"                                   |       100 |        152 |     1.5200 |
157- | "Input2 size"                                   |       100 |        133 |     1.3300 |
158- | "Input3 size"                                   |       100 |        244 |     2.4400 |
--
212: | "Tutorial_Lcp_Combiner"                                              |             100 |           0.045 |          454.773 |
213- | "FunctionalParticleMaker#3"                                          |             100 |           0.010 |          109.340 |
...
Let’s go through this line by line.
  • The first line (151) prints the name of this GaudiAlgorithm instance and the number of counters.

  • Line 152 shows the header; as there are different types of counters, the header contains columns that are not filled for all counters of this combiner.

  • Line 153 counts the number of events in which the decision has been positive. In our case 0 out of 100 for which this combiner has been run.

  • Line 154 counts the number of candidates in which the two-body combination cut decision of is positive. Here, there were 128 combinations (which implicitly passed the combiner’s decay descriptor), 4 out of which passed the two-body combination cut. As the Combination12Cut is a very cheap operation, and helps to reject background early on, you should always consider applying one.

  • A similar counter in line 155 shows the positive combination cut decisions. In this case, we combined 4 candidates passing the Combination12Cut with the Input3 (pion) container of this event. This leads to 10 candidates, out of which 0 are selected.

  • Lines 156 to 158 display the sizes and average per event multiplicities of input containers. They are in the same order as we passed them to the combiner, i.e. proton, kaon and pion candidates.

  • You might have noticed that there is no counter for the CompositeCut of our combiner. It has been suppressed, since there was no input to be processed.

Tip

Understanding counters is extremely useful for developing and debugging your selection.

More on counters in this talk.

The second part of our grep result shows an except of the timing table where the header:

| Name of Algorithm | Execution Count | Total Time / s  | Avg. Time / us   |

is further up in the log.

Tip

To speed up your selection, you are mainly interested in the Total Time of your filters and combiners. This can be reduced by a

  1. tighter selection on the inputs;

  2. tighter selection in the Combination(12[34])Cut;

  3. ordering cuts by efficiency and functor evaluation speed;

  4. well chosen configuration of the control flow;

  5. globally by sharing selections (not builders).

Further hints are given in the Timing and Performance section of the line authoring guidelines.

Full example

A full implementation example of the line described here can be found at Hlt/Hlt2Conf/python/Hlt2Conf/lines/hlt2_line_example.py. Have a look at this and see how it differs from yours. In particular, see how the imports have been organised near the top of the file, and everything has a consistent look.

You may have noticed that the make_ and h_for_charm functions have a leading underscore in their name. This is a detail that we will follow up on when discussing code design guidelines.

Hint

The full example runs 3 lines. One for the \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \pi^{-}\) decay, and two instances of the \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \mu^{-} \bar{\nu}_{\mu}\) line with a slightly modified pion \(p_\text{T}\) cut. Have a close look at the counters that the example produces. Can you understand all of them?

  • We have two counters for the Tutorial_pions_for_charm_and_beauty filter. Which one is which?

  • Why does one of them have fewer inputs?

  • We have two counters for the Tutorial_Lcp_Combiner and three for Tutorial_Lb0_Combiner combiners, two of which look identical. Why is that?

  • Some combiners don’t seem to run on all 100 events. Why is that?

  • There is no Combination12Cut counter for Tutorial_Lcp_Combiner#1, even though the input containers for one event are not empty. What happened?

Try to follow elements from the example in your own line. Remember that it is your line, and you should feel free to really own it. Show off and make it nice!

Modifying thresholds

A common task when developing lines and when running the trigger is to modify cut values. This can be to increase or decrease the rate of the selection when running, or to fix a bug.

There are two ways to do this. The first is simple: edit the source! The values in the source signal your intent, and if your intent changes, so should the source. (The alternative is to have the values in the source and the ‘actual values’ that are used by running elsewhere, which can be confusing.)

What if you wanted to run a couple of instances of this line, but one with the standard cuts and one with some thresholds slightly modified? This can be achieved by using the @configurable decorator.

In the full example Hlt/Hlt2Conf/python/Hlt2Conf/lines/hlt2_line_example.py, we made use of this functionality

run_hlt2_line_example
def make_lines():
    standard_lines = [line_builder() for line_builder in all_lines.values()]

    # This is to demonstrate how `configurable`/`bind` works. We could also pass the function arguments directly lb0tolcpmum_line()
    with lb0tolcpmum_line.bind(
            name="Hlt2Tutorial_Lb0ToLcpMumNu_LcpToPpKmPip_Pip_pt450MeV",
            pi_pt_min=450 * MeV):
        modified_line = lb0tolcpmum_line()

    return standard_lines + [modified_line]


run_moore(options, make_lines, public_tools)

This configuration will run 3 lines: the \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \pi^{-}\) and \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \mu^{-} \bar{\nu}_{\mu}\) lines with default configuration, and the \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \mu^{-} \bar{\nu}_{\mu}\)

When running with:

Moore/run gaudirun.py '$HLT2CONFROOT/options/run_hlt2_line_example.py' 2>&1 | tee hlt2_line_example.log

Hint

  1. You don’t need to modify the source code (but it is often better to do that!).

  2. You don’t need to ‘expose’ everything you want to change on the top-level line maker, you just modify the behaviour of @configurable functions directly.

You can read a lot more about the @configurable decorator in the Tonic documentation.

Code design guidelines

These guidelines are not set in stone, and up for debate.

Important

Summary of best practices

  1. Basic building blocks of the selections should be identified and declared locally if they cannot be taken from a shared location.

  2. Builder functions (_make_*) should only be used if called more than once. DataHandles of reconstructed objects need to be passed as positional arguments. Optional arguments like names, decay descriptors or bool/enum-style variables should also be passed as positional arguments. Using cut values as arguments or passing *args or **kwargs is discouraged.

  3. Selection steps with “rare” outputs should be part of the control flow. Best efforts on the order of objects should be made based on speed and rarity of the selection step.

  4. Functions should never be imported from a module which registers lines. Functions that are only used in one module should start with an underscore, see the PEP 8 Style Guide for Python Code

  5. A consistent naming scheme for lines and combiners can help with code readability and debugging.

  6. A docstring at the beginning of a file can act like a table of contents and help to navigate through it. Searching a line name from a list in that comment can help to jump to the right place in the code.

Corollary: selection cuts are exposed once in the configuration, and cannot be overwritten.

The reasoning for these choices is as follows: The principles follow those of the RecoConf package, most notably

  1. Reconstructed objects “flow” through the make_* functions.

  2. Functions define a single “logical” step. The global data flow is configured in as “flat” as possible functions, where the logical steps are pieced together.

We make some distinctions for the selection configuration, as selections sit on top of a relatively long data flow. Exposing this to adhere to rule 1. would be too explicit, as the starting point would be the raw event. It thus makes sense to re-define starting points or basic building blocks for selections. In the example case these are high level objects like _protons_for_charm, _kaons_for_charm and _pions_for_charm_and_beauty.

Defining these building blocks is a design choice that each line-author has to make. In our case, we might even want to choose the \(\Lambda_{c}^{+}\) candidate as a point of entry. The basic building blocks can be declared locally in the module with the lines, or shared within a working group or with everybody (standard_particles).

Another distinction to the reconstruction configuration is that the majority of the selection uses exactly two algorithms: ParticleFilter and ParticleCombiner, but will create a vast number of instances of them to express the various selections. On the other hand, the reconstruction mostly uses dedicated algorithms, most of them with their own default parameter tuning. We would like to express our production-ready selections similarly, i.e have well tuned cuts for specific selection purposes (_make_lambdacs_for_beauty). Note that we have the flexibility to tune cuts to the last digit for every specific purpose separately, but the price of such an approach should be made clear:

Attention

Every call to ParticleFilter or ParticleCombiner with different inputs or different selection cuts will create a new instance of the algorithm.

To be explicit, imagine the following: After inspecting first data from both our example decays, we found that the hadronic selection would profit from a tighter \(p_\text{T}\) cut on the \(\Lambda_{c}^{+}\) candidate. To avoid boilerplate code, we could add an argument to the _make_lambdacs_for_beauty function that defines the \(p_\text{T}\) cut value and passes it to the functor. We would then call this function with different values from the line-defining function. But this will create 2 instances of ParticleCombiner, meaning that the full algorithm will run twice with slightly different cuts.

This kind of duplication should be avoided as much as possible, especially for relatively expensive operations like 3-body combinations with highly abundant inputs. A faster way in such a case might be to run a Particlefilter on the common \(\Lambda_{c}^{+}\) candidate, that only performs the tighter \(p_\text{T}\) cut.

Can you modify the example to confirm that this really speeds up the selection?

Selections live at the end of the trigger-food-chain, and the data-flow determines which steps need to be taken to make candidates for our line. However, selection steps often have more than one input, and the configuration offers the possibility to create artificial barriers in the data-flow. Taking \(\Lambda_{b}^{0} \to \Lambda_{c}^{+} \mu^{-} \bar{\nu}_{\mu}\) as an example, we can for example decide to run the combiner for \(\Lambda_{c}^{+} \to p K^{-} \pi^{+}\) only after a muon with large \(p_\text{T}\) and high \(\chi^2_\text{IP}\) has been found. Such a configuration of course only brings an advantage if the majority of events does not contain such a muon.

See also

To find out if a certain control flow configuration speeds up the selection, in most cases it is sufficient to look at the timing tables and counters of a log file when running on HLT1-filtered minBias data.

Importing a selection or function from a module that defines Hlt2 lines is discouraged. That is because the line authors of the module might not be aware that their function is used elsewhere and modify their selection, rename the function or change its behaviour. If the function to import defines a selection that should be common to both modules, the question is if this function should be moved to a shared file within the WG or LHCb, or if both selections should be part of the same module.

Line names have been briefly discussed in the section on Line declaration. There is no strict common set of best practices, but it makes sense to think about consistent names of lines beforehand, as we would like to avoid re-naming lines during data-taking. For debugging purposes, it has proven useful to overwrite the default names of combiners (e.g. TwoBodyCombiner#123 to Tutorial_Lb0_Combiner). For (machine-)readability it is useful to have names like MyWG_MyModule_MyCombiner. We don’t recommend naming filters, as it can easily lead to clashes during the automatic code-deduplication stage. See also Moore#378 and Moore#380 . The naming of builder-, filter- and line-defining functions itself is, apart from the leading underscore for local functions, not of great concern. We recommend keeping them in snake_case, short and descriptive.

Adding comments to the code is recommended. The comments should add information on the selection, provide pointers to further documentation, or remind the authors and others of future steps (# TODO). Commenting out code is discouraged.

Monitoring your line

Monitoring your line during data-taking is important for spotting errors as early as possible. We make a distinction between online- and offline-monitoring. While the former is histogram-based and happens in parallel with the Hlt2 processing, the latter can be done with a regular automatized offline production, as proposed by the Early Measurements Task Force here .

Default monitoring

The documentation here concerns the online-monitoring that can be configured in Moore. If you choose to not configure any monitoring, a set of default monitors will run. This means that every Hlt2 line will fill a set of histograms by default. Currently these default histograms are \(p_\text{T}\), \(\eta\), mass, vertex \(\chi^2\), \(\chi^2_\text{IP}\) w.r.t. the “best” PV and the candidate multiplicity. The monitors can be configured line-by-line with the monitoring_variables argument of the Hlt2Line instance. The argument is a tuple, and the current default is ("pt", "eta", "m", "vchi2", "ipchi2", "n_candidates"). More variables for automatic monitoring are, and can be, defined in monitoring.py. For switching off the default monitors for a line entirely, simply pass an empty tuple: (Hlt2Line(name=..., algs=[...], monitoring_variables=(), ...)). Default monitoring can also be switched off globally with

from Moore.monitoring import run_default_monitoring
...
with run_default_monitoring.bind(run=False):
  ...

Custom monitoring

Custom monitoring of particles can be configured individually for each line with a functor-based Algorithm called Monitor__ParticleRange. As an example, we can set up a mass monitor for the \(\Lambda_{c}^{+}\) that is an intermediate step of our tutorial line Hlt2Tutorial_Lb0ToLcpPim_LcpToPpKmPip_Line

from PyConf.Algorithms import Monitor__ParticleRange
...
# in the lb0_to_lcpim_line(name=...) function
lc_mass_mon = Monitor__ParticleRange(
  Input=lcs,
  Variable=F.MASS,
  HistogramName=f"/{name}/lc_m",
  Bins=60,
  Range=(2080 * MeV, 2480 * MeV),
)
...
return Hlt2Line(
          name=name,
          algs=upfront_reconstruction() + [require_pvs(pvs), lc_mass_mon, lbs],
          prescale=prescale,
          monitoring_variables=(),
       )
There are a few things to note:
  • The monitor has to be included in the control flow, takes a datahandle of the particle to monitor (lc) and a functor of what should be monitored (F.MASS).

  • In this case, it will plot all \(\Lambda_{c}^{+}\) that are used as input to the \(\Lambda_{b}^{0}\) combiner. If put after lbs in the control flow, we would only get a plot of \(\Lambda_{c}^{+}\) for which a \(\Lambda_{b}^{0}\) candidate is found (the ones you’d see offline, plus combinatorial or opposite side \(\Lambda_{c}^{+}\) candidates).

  • For being able to benchmark monitors, when a name is given, it should start with Monitor_. This is implicit in the example (the algorithm will be called Monitor__ParticleRange#; you can modify it with name=Monitor_)

  • The HistogramName property takes a full path. In this case there will be a histogram called lc_m in the directory {name} (the trigger line name) in the output file. It is recommended to stick to this naming, which is also used for the default monitoring (there, the histogram m would exist and be filled with the \(\Lambda_{b}^{0}\) mass).

  • In the example, monitoring_variables is an empty tuple. If this property would not be set explicitly, the default monitoring histograms would be filled as well.

Test your monitors

To test the monitoring, add the following to your Moore options file:

options.histo_file = 'my_histograms.root'

For the time being, this will create two files, and the histograms from Monitor__ParticleRange will end up in my_histograms_new.root (while histograms created with older algorithms will be put to my_histograms.root).

Next steps

An important aspect of authoring an HLT2 line is stepping back and spotting instances of code duplication. Multiple instances of the same intent can be refactored into a common function. This reduces any maintenance burden and decreases the likelihood of two implementations slowly drifting apart over time (if someone changes one but does not know about the existence of the other).

When writing lines it’s extremely useful to be able to be able to analyse the output files. It’s also helpful to refer to the documentation on Debugging in case something isn’t working. Once you’re ready to start physics performance studies, you can start Analysing HLT2 output. The Running with Ganga page has instructions for writing Ganga-compatible options.

Guidelines on selection rate, output bandwidth, and timing are given in Line authoring guidelines.

Differences from Run 2 configurations

This section is yet to be written. If you have some tips and tricks on porting Run 2 Stripping and HLT2 lines to Moore, please open a merge request!