edf implementation