use extend module instead of util._extend