Alert, except this won't always work until oob error handling is rock solid.
Nicer exception handling, and fixed an off-by-one with clipping
Refactors