depends on lodash rather than underscore