added more utils
added actual error messages