added async exception catching into pipes