def METHOD_NAME(self):
    if self.inputs['X'].is_linked:
        vecs = self.inputs['X'].sv_get()
    else:
        vecs = [[0.0]]
    # outputs
    if not self.outputs['Result'].is_linked:
        return
    list_mult = []
    if self.inputs['n[0]'].is_linked:
        i = 0
        for socket in self.inputs[1:]:
            if socket.is_linked:
                list_mult.append(socket.sv_get())
    code_formula = parser.expr(self.formula).compile()
    # finding nested levels, make equal nastedness (canonical 0,1,2,3)
    levels = [levelsOflist(vecs)]
    for n in list_mult:
        levels.append(levelsOflist(n))
    maxlevel = max(max(levels), 3)
    diflevel = maxlevel - levels[0]
    if diflevel:
        vecs_ = dataSpoil([vecs], diflevel-1)
        vecs = dataCorrect(vecs_, nominal_dept=2)
    for i, lev in enumerate(levels):
        if i == 0:
            continue
        diflevel = maxlevel-lev
        if diflevel:
            list_temp = dataSpoil([list_mult[i-1]], diflevel-1)
            list_mult[i-1] = dataCorrect(list_temp, nominal_dept=2)
    r = self.inte(vecs, code_formula, list_mult, 3)
    result = dataCorrect(r, nominal_dept=min((levels[0]-1), 2))
    self.outputs['Result'].sv_set(result)