# File lib/linguistics/en.rb, line 940
    def indef_article( word, count )
        count ||= Linguistics::num
        return "#{count} #{word}" if
            count && /^(#{PL_count_one})$/i !~ count.to_s

        # Handle user-defined variants
        # return value if value = ud_match( word, A_a_user_defined )

        case word

        # Handle special cases
        when /^(#{A_explicit_an})/i
            return "an #{word}"

        # Handle abbreviations
        when /^(#{A_abbrev})/x
            return "an #{word}"
        when /^[aefhilmnorsx][.-]/i
            return "an #{word}"
        when /^[a-z][.-]/i
            return "a #{word}"

        # Handle consonants
        when /^[^aeiouy]/i
            return "a #{word}"

        # Handle special vowel-forms
        when /^e[uw]/i
            return "a #{word}"
        when /^onc?e\b/i
            return "a #{word}"
        when /^uni([^nmd]|mo)/i
            return "a #{word}"
        when /^u[bcfhjkqrst][aeiou]/i
            return "a #{word}"

        # Handle vowels
        when /^[aeiou]/i
            return "an #{word}"

        # Handle y... (before certain consonants implies (unnaturalized) "i.." sound)
        when /^(#{A_y_cons})/i
            return "an #{word}"

        # Otherwise, guess "a"
        else
            return "a #{word}"
        end
    end