generalize pre-post metric