plenty changes. added implementation for open dictionary