reorganizing code modules