a bunch more work on fragmentation