cleanup
better errors