updated .onErrorThrow