almost done....

all working except the derivation