#5 added error code, exposed esniffResult property on error