finally a cleanish proof