On the mechanism of transmetalation of porphyrin complexes