1. added error handler
2. added updater