Trash 1 program

By godmiles, in Android: Netrunner Rules Questions

When this phrase is encountered, I am confused as to which program gets trashed. Who chooses? Does it matter which card it is on? It seems that Agressive Secretary (the ambush from HB) says:

" If YOU pay 2 monies when the runner accesses Agressive Secretary, trash 1 program for each advancement token on Aggressive Secretary."

This makes me think that in this case, the corp chooses.

But what if "trash 1 program." is a subroutine (as in Rototurret). It seems vague as to who selects the program.

Sorry, i realize this question has been answered in the Archives. It has been said that the corp chooses.