surprise: a sudden unexpected event
change: an event that occurs when something passes from one state or phase to another
firmware: (computer science) coded instructions that are stored permanently in read-only memory