p58 impl and test