rename onerror -> catchall