- split fit into internal functions for rakeld