function generators ahoy