forked ecmaUtil