Preliminary !pp functionality

Very likely the wrong way to go, but fast and dirty.