Pepper utilises an intermediate-model approach, with Salt as its intermediate model: Instead of implementing a direct conversion solution from format X to format Y, X is mapped onto Salt, manipulated where necessary, and subsequently mapped onto format Y.
the number of mappings to convert n into m formats is reduced to 2n, as compared to n 2 −n mappings for direct conversion routes.