documentation; better exception handling