'For each artifact, create subflows for each collector.'

@flow.StateHandler()
def Start(self):

    self.state.knowledge_base = None
    self.state.fulfilled_deps = []
    self.state.partial_fulfilled_deps = set()
    self.state.all_deps = set()
    self.state.in_flight_artifacts = []
    self.state.awaiting_deps_artifacts = []
    self.state.completed_artifacts = []
    self.InitializeKnowledgeBase()
    first_flows = self.GetFirstFlowsForCollection()
    for artifact_name in first_flows:
        self.state.in_flight_artifacts.append(artifact_name)
        self.CallFlow('ArtifactCollectorFlow', artifact_list=[artifact_name], knowledge_base=self.state.knowledge_base, store_results_in_aff4=False, next_state='ProcessBase', request_data={'artifact_name': artifact_name})
