rudimentary queuing. untested