implements POP, with doc comms