Task Allocation Algorithm for Heterogeneous UAV Swarm with Temporal Task Chains | Synapse