outline for yield function and queue data structure