create task functions for queueing