def find(name, default: default_rule, **options)
      rule = select(name, **options).inject do |l, r|
        return r if r.class == Rule::Exception

        l.length > r.length ? l : r
      end
      rule || default
    end
def find(name, default: default_rule, **options)
      rule = select(name, **options).inject do |l, r|
        return r if r.class == Rule::Exception

        l.length > r.length ? l : r
      end
      rule || default
    end
Finds and returns the rule corresponding to the longest public suffix for the hostname.

 @param  name [#to_s] the hostname
 @param  default [PublicSuffix::Rule::*] the default rule to return in case no rule matches
 @return [PublicSuffix::Rule::*]