unsurprisingly this seems to work great, too. need to make a real compound operation and add heap queueing.