ordereddict is only used for tests