Checkpoint; still trying to get a good divide function