def pretty_print(pp)
      # return pp.group(1, "#{self.class}[", "]") do
      return pp.group(1, "{", "}") do
        pp.breakable ''
        pp.seplist(self, nil) do |key, val|
          pp.group do
            key.pretty_print(pp)
            pp.text ' => '
            pp.group(1) do
              pp.breakable ''
              val.pretty_print(pp)
            end
          end
        end
      end
    end
def pretty_print(pp)
      # return pp.group(1, "#{self.class}[", "]") do
      return pp.group(1, "{", "}") do
        pp.breakable ''
        pp.seplist(self, nil) do |key, val|
          pp.group do
            key.pretty_print(pp)
            pp.text ' => '
            pp.group(1) do
              pp.breakable ''
              val.pretty_print(pp)
            end
          end
        end
      end
    end
Allows this `Map` to be printed at the `pry` console, or using `pp` (from the
 Ruby standard library), in a way which takes the amount of horizontal space on
 the screen into account, and which indents nested structures to make them easier
 to read.

 @private