rearranged hw