error checks and cleaner dev interface