updated P2