version 2 almost done with errors