add implementation without error handlers