op is now a pointer