refactoring to runtime data, added resolvers, fixed unit tests