david perry