 // rdar://problem/19804127
 import TestsUtils
 
+let t: [BenchmarkCategory] = [.validation, .api, .Dictionary]
+
 public let DictionarySwap = [
-  BenchmarkInfo(name: "DictionarySwap", runFunction: run_DictionarySwap, tags: [.validation, .api, .Dictionary]),
-  BenchmarkInfo(name: "DictionarySwapOfObjects", runFunction: run_DictionarySwapOfObjects, tags: [.validation, .api, .Dictionary]),
-  BenchmarkInfo(name: "DictionarySwapAt", runFunction: run_DictionarySwapAt, tags: [.validation, .api, .Dictionary]),
-  BenchmarkInfo(name: "DictionarySwapAtOfObjects", runFunction: run_DictionarySwapAtOfObjects, tags: [.validation, .api, .Dictionary]),
+  BenchmarkInfo(name: "DictionarySwap",
+    runFunction: run_DictionarySwap, tags: t, legacyFactor: 4),
+  BenchmarkInfo(name: "DictionarySwapOfObjects",
+    runFunction: run_DictionarySwapOfObjects, tags: t, legacyFactor: 40),
+  BenchmarkInfo(name: "DictionarySwapAt",
+    runFunction: run_DictionarySwapAt, tags: t, legacyFactor: 4),
+  BenchmarkInfo(name: "DictionarySwapAtOfObjects",
+    runFunction: run_DictionarySwapAtOfObjects, tags: t, legacyFactor: 40),
 ]
 
 @inline(never)

    CheckResults(dict.count == size)

    var swapped = false
    for _ in 1...10000*N {
        let b1 = Box(25)
        let b2 = Box(75)
        (dict[b1], dict[b2]) = (dict[b2]!, dict[b1]!)

  CheckResults(dict.count == size)

  var swapped = false
  for _ in 1...2500*N {
    let i25 = dict.index(forKey: 25)!
    let i75 = dict.index(forKey: 75)!

