split derivation from utils