still working on derivative