to catch apply errors
take out deferred