default and manual functionality