Make PUT and INSERT commands automatically take objects if the player is not holding them.

"Stop" and "Continue" are most useful when we need to write rules that will have to stop the action some of the time but at other times let it pass; so for instance:

"Democratic Process"
Before inserting something which is not carried by the player into something:
   if the noun is in the second noun, say "Already done." instead;
   say "(first taking [the noun])[line break]";
   silently try taking the noun;
   if the player is not holding the noun, stop the action.
Before putting something which is not carried by the player on something:
   if the noun is on the second noun, say "Already done." instead;
   say "(first taking [the noun])[line break]";
   silently try taking the noun;
   if the player is not holding the noun, stop the action.
The Assembly Room is a room. "On most days, this room is used for elementary school assemblies; at the moment, it serves as a voting place." The ballot is on the desk. The desk is in the Assembly Room.
The machine is a container in the Assembly Room. "On the ballot machine is a sign which reads 'PUT BALLOTS IN ME :)'." Understand "ballot machine" as the machine.
Test me with "put ballot in machine".
Test me with "put ballot in machine".
Assembly Room
On most days, this room is used for elementary school assemblies; at the moment, it serves as a voting place.

On the ballot machine is a sign which reads "PUT BALLOTS IN ME :)".

You can also see a desk (on which is a ballot) here.

>(Testing.)

>[1] put ballot in machine
(first taking the ballot)

You put the ballot into the machine.