perfect ALGORITHM PMV