done. Perfect FD