add tube functionality