finding derivatives