should be faster now, still one copy ;-(