def split_route(route):
    """
    Split a full route into single nest to nest subroute
    """
    routes = []
    i = -1

    for node in route:
        if node.id == 0:
            # start a new subroute in position i
            if i != -1:
                # close the old subroute
                routes[i].append(route[0])

            # start the new subroute
            routes.append([node])
            i += 1
        else:
            # add node to the i-subroute
            routes[i].append(node)

    # return all the subroute except for the last one, which is composed only by the nest (node 0)
    return routes[:-1]