- some rearranging