working around yield bullshit that doesnt work the way the docs claim