# File lib/dnsruby/resource/NSEC3.rb, line 33
  def decode32hex(str)
    str.gsub(/\G\s*(#{HEX}{8}|#{HEX}{7}=|#{HEX}{5}={3}|#{HEX}{4}={4}|#{HEX}{2}={6}|(\S))/imno) do
      raise 'invalid base32' if $2
      s = $1
      s.tr('=', '0').to_i(32).divmod(256).pack('NC')[0,
        (s.count('^=') * 5).div(8)]
    end
  end