implements PDA. not emit anything yet.