everything except edge detection works