Changes to reason() and visa_required()