def slice(*wanted)
      trie = Trie.new(0)
      wanted.each { |key|
        key = Erlang.from(key)
        trie.put!(key, get(key)) if key?(key)
      }
      return self.class.alloc(trie, @default)
    end
def slice(*wanted)
      trie = Trie.new(0)
      wanted.each { |key|
        key = Erlang.from(key)
        trie.put!(key, get(key)) if key?(key)
      }
      return self.class.alloc(trie, @default)
    end
Return a new `Map` with only the associations for the `wanted` keys retained.

 @example
   m = Erlang::Map["A" => 1, "B" => 2, "C" => 3]
   m.slice("B", "C")  # => Erlang::Map["B" => 2, "C" => 3]

 @param wanted [::Enumerable] The keys to retain
 @return [Map]