starting my own derivation