public void WriteMapValues(object map, WriteItem valueWriter, Encoder encoder)
 {
     foreach (DictionaryEntry entry in ((IDictionary)map))
     {
         encoder.StartItem();
         encoder.WriteString(entry.Key.ToString());
         valueWriter(entry.Value, encoder);
     }
 }