<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _print_MatMul(self, expr):
 """ Matrix multiplication printer. The sympy one turns everything into a dot product without type-checking. """

        from sympy import MatrixExpr
        links = []
        for i, j in zip(expr.args[1:], expr.args[:-1]):
            if isinstance(i, MatrixExpr) and isinstance(j, MatrixExpr):
                links.append(').dot(')
            else:
                links.append('*')
        printouts = [self._print(i) for i in expr.args]
        result = [printouts[0]]
        for link, printout in zip(links, printouts[1:]):
            result.extend([link, printout])
        return '({0})'.format(''.join(result))