break apart function