first pass at multi derivations