derivation works ... more tests implemented