remove dependency on underscore