Clean code. Add exceptions