сортировка в словаре

как отсортировать словарь по значениям value?

begin
  var dict := new Dictionary<string, integer>;
  dict['крокодил'] := 2;
  dict['какаду'] := 5;
  dict['бегемот'] := 3;
  println(dict);

  var sorted_dict := dict.OrderBy(x -> x.Value).ToDictionary(x -> x.Key, x -> x.Value);
  println(sorted_dict);
end.

Собственно сортировка происходит в методе OrderBy.