assoc data refactoring according to spec