structure done for sort-forking