def METHOD_NAME(self):
    if not any(socket.is_linked for socket in self.outputs):
        return
    verts_in = self.inputs['Vertices'].sv_get(deepcopy=False)
    faces_in = self.inputs['Faces'].sv_get(deepcopy=False)
    sites_in = self.inputs['Sites'].sv_get(deepcopy=False)
    #thickness_in = self.inputs['Thickness'].sv_get()
    spacing_in = self.inputs['Spacing'].sv_get(deepcopy=False)
    verts_in = ensure_nesting_level(verts_in, 4)
    input_level = get_data_nesting_level(sites_in)
    sites_in = ensure_nesting_level(sites_in, 4)
    faces_in = ensure_nesting_level(faces_in, 4)
    #thickness_in = ensure_nesting_level(thickness_in, 2)
    spacing_in = ensure_min_nesting(spacing_in, 2)
    nested_output = input_level > 3
    precision = 10 ** (-self.accuracy)
    verts_out = []
    edges_out = []
    faces_out = []
    sites_out = []
    for params in zip_long_repeat(verts_in, faces_in, sites_in, spacing_in):
        new_verts = []
        new_edges = []
        new_faces = []
        new_sites = []
        for verts, faces, sites, spacing in zip_long_repeat(*params):
            verts, edges, faces, sites = voronoi_on_mesh(verts, faces, sites, thickness=0,
                        spacing = spacing,
                        #clip_inner = self.clip_inner, clip_outer = self.clip_outer,
                        do_clip=True, clipping=None,
                        mode = self.mode,
                        normal_update = self.normals,
                        precision = precision)
            if self.join_mode == 'FLAT':
                new_verts.extend(verts)
                new_edges.extend(edges)
                new_faces.extend(faces)
                new_sites.extend(sites)
            elif self.join_mode == 'SEPARATE':
                new_verts.append(verts)
                new_edges.append(edges)
                new_faces.append(faces)
                new_sites.append(sites)
            else: # JOIN
                verts, edges, faces = mesh_join(verts, edges, faces)
                new_verts.append(verts)
                new_edges.append(edges)
                new_faces.append(faces)
                new_sites.append(sites)
        if nested_output:
            verts_out.append(new_verts)
            edges_out.append(new_edges)
            faces_out.append(new_faces)
            sites_out.append(new_sites)
        else:
            verts_out.extend(new_verts)
            edges_out.extend(new_edges)
            faces_out.extend(new_faces)
            sites_out.extend(new_sites)
    self.outputs['Vertices'].sv_set(verts_out)
    self.outputs['Edges'].sv_set(edges_out)
    self.outputs['Faces'].sv_set(faces_out)
    #self.outputs['AllSites'].sv_set(sites_out)