'Return the taint source for this Variable Definition if any; otherwise
return None.'

@property
def taint_source(self):

    taintsrc = self._taint_source
    if taintsrc:
        return taintsrc
    else:
        deps = list(itertools.chain((self,), self.deps()))
        v = (deps[(-2)].var_node if (len(deps) > 1) else None)
        if (v and (type(v._parent_node) is phpast.ArrayOffset)):
            return v._parent_node.expr
        return None
