new implementation of dicitonaries, down to 10 tests failing