add initial sink and source logic