removed closures for cdef