x forgot some error checking