Added string errors, superior functions