better speed but with errors