Quick question: Isn't the default version also checked in some way? Otherwise, how does it know to throw?