PPM 2nd upload.

All basic requirements have completed. Ready for comments and extra
functions.