def METHOD_NAME(self, node: JoinOverTimeRangeNode) -> DefaultCost:  # noqa: D
    parent_costs = [x.accept(self) for x in node.parent_nodes]
    # Add the number of aggregations to the cost (eg 1 per unit time)
    node_cost = DefaultCost(num_aggregations=1)
    return DefaultCost.sum(parent_costs + [node_cost])