'Returns ``(g, dummies, msym, v)``, the entries of ``canonicalize``
see ``canonicalize`` in ``tensor_can.py``'

def indices_canon_args(self):

    from sympy.combinatorics.permutations import _af_new
    n = self._ext_rank
    g = (([None] * n) + [n, (n + 1)])
    for (i, (indx, ipos)) in enumerate(self._get_sorted_free_indices_for_canon()):
        g[ipos] = i
    pos = len(self.free)
    j = len(self.free)
    dummies = []
    prev = None
    a = []
    msym = []
    for (ipos1, ipos2) in self._get_sorted_dum_indices_for_canon():
        g[ipos1] = j
        g[ipos2] = (j + 1)
        j += 2
        typ = self.index_types[ipos1]
        if (typ != prev):
            if a:
                dummies.append(a)
            a = [pos, (pos + 1)]
            prev = typ
            msym.append(typ.metric_antisym)
        else:
            a.extend([pos, (pos + 1)])
        pos += 2
    if a:
        dummies.append(a)
    return (_af_new(g), dummies, msym)
