    # File lib/memcache/segmented.rb, line 8
        def get(keys, cas = nil)
          return get([keys], cas)[keys.to_s] unless keys.kind_of?(Array)
          return {} if keys.empty?

          results = super(keys, cas)
          keys = {}
          keys_to_fetch = []
          results.each do |key, value|
            next unless segmented?(value)
            keys[key] = segment_keys(value)
            keys_to_fetch.concat keys[key]
          end

          parts = super(keys_to_fetch)
          keys.each do |key, hashes|
            value = ''
            hashes.each do |hash_key|
              if part = parts[hash_key]
                value << part
              else
                value = nil
                break
              end
            end

            if value
              value.memcache_cas   = results[key].memcache_cas
              value.memcache_flags = results[key].memcache_flags ^ PARTIAL_VALUE
            end
            results[key] = value
          end
          results
        end