separate bindable and pipeable