Need to consider a more efficient channel pushing idiom