implement getPreviousError() and resetError()
implement negative limits (nReturn)