slow progress towards not messing up derivatives