refactor with default tube