dictionary evaluation seems to be working but needs more validation