def METHOD_NAME(self):
    O, Vind, Vmask, edpo, FtoB = self.inputs
    Osvi, Osvmas, OObj = self.outputs
    Prop = self.formula
    objsl = O.sv_get()
    elements = [getattr(ob.data, self.mode) for ob in objsl]
    if self.deselect_all:
        for ob in objsl:    # unfortunately we can't just deselect verts
            for p in ob.data.polygons:
                p.select = False
            for e in ob.data.edges:
                e.select = False
            for v in ob.data.vertices:
                v.select = False
    if Vind.is_linked:
        for omv, ind in zip(elements, Vind.sv_get()):
            for i in ind:
                omv[i].select = True
    if Vmask.is_linked:
        for obel, ma in zip(elements, Vmask.sv_get()):
            obel.foreach_set('select', safc(obel[:], ma))
    if edpo.is_linked:
        for obj, ind in zip(objsl, edpo.sv_get()):
            omv = obj.data.vertices
            for i in np.unique(ind):
                omv[i].select = True
    if FtoB.is_linked:
        str = "for val, elem in zip(floats, omv):\n    elem.select="+self.formula
        for omv, floats in zip(elements, FtoB.sv_get()):
            exec(str)
    if Osvi.is_linked:
        Osvi.sv_set([[v.index for v in elem if v.select] for elem in elements])
    if Osvmas.is_linked:
        Osvmas.sv_set([[v.select for v in elem] for elem in elements])
    if OObj.is_linked:
        OObj.sv_set(objsl)