What does the Candidate Acceptance Workflow Definition look like?
func Accept(ctx workflow.Context, input *AcceptWorkflowInput) (*AcceptWorkflowResult, error) {
    err := emailCandidate(ctx, input)
    if err != nil {
        return &AcceptWorkflowResult{}, err
    }
    submission, err := waitForSubmission(ctx)
    result := AcceptWorkflowResult(*submission)
    return &result, err
}