I'd like to see the pc_do call broken out on its own, since folding a form into one or two model calls looks like where most of your time gap comes from. Have you checked whether the model makes more mistakes when it plans a whole form at once, say on the seven-field form with the pre-ticked box?