split out branch, source node and effector node
add port for key accessor