change the way to compose p2