copy update
pipes are better